(1/6) bcm57xx: init from diag
authornbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Sun, 15 Jun 2008 11:09:27 +0000 (11:09 +0000)
committernbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Sun, 15 Jun 2008 11:09:27 +0000 (11:09 +0000)
I've been working to finish up the bcm57xx module package nbd
posted a few months ago.  I am no expert, just had some spare
time and some motivation.  Here is the background:

https://dev.openwrt.org/ticket/2744

This first patch disables the bcm57xx gpio setup in broadcom-diag.
The switch needs to be initialized by the driver so the driver can
then reset the switch ASAP.  If the switch isn't reset quickly enough,
it will forward packets between the WAN and LAN, which will cause
problems with modems that only allow one mac to access the internet.

Tested on wrt350n.

Signed-off-by: Ben Pfountz <netprince (at) vt (dot) edu>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@11466 3c298f89-4303-0410-b956-a3cf2f4a3e73

package/broadcom-diag/src/diag.c

index a4bad4d..9cfc1d9 100644 (file)
@@ -142,9 +142,12 @@ static void __init bcm4780_init(void) {
 static void __init bcm57xx_init(void) {
        int pin = 1 << 2;
 
+#ifndef LINUX_2_4
+       /* FIXME: switch comes up, but port mappings/vlans not right */
        gpio_outen(pin, pin);
        gpio_control(pin, 0);
        gpio_out(pin, pin);
+#endif
 }
 
 static struct platform_t __initdata platforms[] = {