The last two hunks of this patch were approved by Rafał, and were pushed
upstream.  However, the first hunk still remains.  Rafał's response was
via private email; however, there has been no response to my replies
back to him with the rationale... perhaps blocked in some way.  Anyway,
the rationale for the first hunk is that the readback of "BGMAC_INT_MASK"
is specified at the following:

        Step 2, http://bcm-v4.sipsolutions.net/mac-gbit/gmac/chipintrsoff

Hopefully, this gets through.

Thanks,

Nathan

On Thu, 2013-02-07 at 00:55 -0800, Nathan Hintz wrote:
> 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

Reply via email to