It needs very similar workarounds to the one on BCM4707. It was tested
on D-Link DIR-885L home router.

Signed-off-by: Rafał Miłecki <zaj...@gmail.com>
---
It's the same patch as last time, just with a proper prefix ("net-next")
---
 drivers/net/ethernet/broadcom/bgmac.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/drivers/net/ethernet/broadcom/bgmac.c 
b/drivers/net/ethernet/broadcom/bgmac.c
index 230f8e6..99b30a9 100644
--- a/drivers/net/ethernet/broadcom/bgmac.c
+++ b/drivers/net/ethernet/broadcom/bgmac.c
@@ -30,6 +30,7 @@ static inline bool bgmac_is_bcm4707_family(struct bgmac 
*bgmac)
 {
        switch (bgmac->core->bus->chipinfo.id) {
        case BCMA_CHIP_ID_BCM4707:
+       case BCMA_CHIP_ID_BCM47094:
        case BCMA_CHIP_ID_BCM53018:
                return true;
        default:
@@ -1052,8 +1053,9 @@ static void bgmac_chip_reset(struct bgmac *bgmac)
            (ci->id == BCMA_CHIP_ID_BCM53572 && ci->pkg == 
BCMA_PKG_ID_BCM47188))
                iost &= ~BGMAC_BCMA_IOST_ATTACHED;
 
-       /* 3GMAC: for BCM4707, only do core reset at bgmac_probe() */
-       if (ci->id != BCMA_CHIP_ID_BCM4707) {
+       /* 3GMAC: for BCM4707 & BCM47094, only do core reset at bgmac_probe() */
+       if (ci->id != BCMA_CHIP_ID_BCM4707 &&
+           ci->id != BCMA_CHIP_ID_BCM47094) {
                flags = 0;
                if (iost & BGMAC_BCMA_IOST_ATTACHED) {
                        flags = BGMAC_BCMA_IOCTL_SW_CLKEN;
-- 
1.8.4.5

Reply via email to