Minor updates to match the specs ( http://bcm-v4.sipsolutions.net/mac-gbit/gmac/ ).
Signed-off-by: Nathan Hintz <[email protected]> Index: target/linux/brcm47xx/patches-3.6/750-bgmac.patch =================================================================== --- target/linux/brcm47xx/patches-3.6/750-bgmac.patch (revision 35509) +++ target/linux/brcm47xx/patches-3.6/750-bgmac.patch (working copy) @@ -85,7 +85,7 @@ +obj-$(CONFIG_BGMAC) += bgmac.o --- /dev/null +++ b/drivers/net/ethernet/broadcom/bgmac.c -@@ -0,0 +1,1422 @@ +@@ -0,0 +1,1423 @@ +/* + * Driver for (BCM4706)? GBit MAC core on BCMA bus. + * @@ -1036,6 +1036,7 @@ +static void bgmac_chip_intrs_off(struct bgmac *bgmac) +{ + bgmac_write(bgmac, BGMAC_INT_MASK, 0); ++ bgmac_read(bgmac, BGMAC_INT_MASK); +} + +/* http://bcm-v4.sipsolutions.net/mac-gbit/gmac/gmac_enable */ @@ -1103,9 +1104,9 @@ + bgmac_cmdcfg_maskset(bgmac, ~BGMAC_CMDCFG_RPI, 0, true); + + if (bgmac->net_dev->flags & IFF_PROMISC) -+ bgmac_cmdcfg_maskset(bgmac, ~0, BGMAC_CMDCFG_PROM, false); ++ bgmac_cmdcfg_maskset(bgmac, ~0, BGMAC_CMDCFG_PROM, true); + else -+ bgmac_cmdcfg_maskset(bgmac, ~BGMAC_CMDCFG_PROM, 0, false); ++ bgmac_cmdcfg_maskset(bgmac, ~BGMAC_CMDCFG_PROM, 0, true); + + /* Set MAC addr */ + tmp = (mac[0] << 24) | (mac[1] << 16) | (mac[2] << 8) | mac[3]; @@ -1114,9 +1115,9 @@ + bgmac_write(bgmac, BGMAC_MACADDR_LOW, tmp); + + if (bgmac->loopback) -+ bgmac_cmdcfg_maskset(bgmac, ~0, BGMAC_CMDCFG_ML, true); ++ bgmac_cmdcfg_maskset(bgmac, ~0, BGMAC_CMDCFG_ML, false); + else -+ bgmac_cmdcfg_maskset(bgmac, ~BGMAC_CMDCFG_ML, 0, true); ++ bgmac_cmdcfg_maskset(bgmac, ~BGMAC_CMDCFG_ML, 0, false); + + bgmac_write(bgmac, BGMAC_RXMAX_LENGTH, 32 + ETHER_MAX_LEN); + _______________________________________________ openwrt-devel mailing list [email protected] https://lists.openwrt.org/mailman/listinfo/openwrt-devel
