another fix for the awk command line parsing - should finally work properly now
[openwrt.git] / package / switch / src / switch-adm.c
index 921ad50..85805f6 100644 (file)
@@ -26,7 +26,7 @@
  * 02110-1301, USA.
  */
 
-#include <linux/config.h>
+#include <linux/autoconf.h>
 #include <linux/module.h>
 #include <linux/init.h>
 #include <linux/if.h>
@@ -49,7 +49,7 @@ static int force = 0;
 
 MODULE_AUTHOR("Felix Fietkau <openwrt@nbd.name>");
 MODULE_LICENSE("GPL");
-#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,17)
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,5,52)
 module_param(eecs, int, 0);
 module_param(eesk, int, 0);
 module_param(eedi, int, 0);
@@ -223,7 +223,7 @@ static __u32 adm_rreg(__u8 table, __u8 addr)
        __u8 bits[6] = {
                0xFF, 0xFF, 0xFF, 0xFF,
                (0x06 << 4) | ((table & 0x01) << 3 | (addr&64)>>6),
-               ((addr&62)<<2)
+               ((addr&63)<<2)
        };
 
        __u8 rbits[4];
@@ -498,8 +498,17 @@ static int detect_adm(void)
 
 #if defined(BCMGPIO2) || defined(BCMGPIO)
        int boardflags = atoi(nvram_get("boardflags"));
+        int boardnum = atoi(nvram_get("boardnum"));
 
-       if ((boardflags & 0x80) || force) {
+        if (boardnum == 44) {   /* Trendware TEW-411BRP+ */
+                ret = 1;
+
+                eecs = getgpiopin("adm_eecs", 2);
+                eesk = getgpiopin("adm_eesk", 3);
+                eedi = getgpiopin("adm_eedi", 4);
+                eerc = getgpiopin("adm_rc", 5);
+
+       } else if ((boardflags & 0x80) || force) {
                ret = 1;
 
                eecs = getgpiopin("adm_eecs", 2);
This page took 0.021759 seconds and 4 git commands to generate.