bnx2x: Change Warpcore MDIO work around mode
authorYaniv Rosner <yanivr@broadcom.com>
Mon, 28 Nov 2011 00:49:49 +0000 (00:49 +0000)
committerDavid S. Miller <davem@davemloft.net>
Tue, 29 Nov 2011 00:02:23 +0000 (19:02 -0500)
This patch enables the usage of simpler MDC/MDIO work-around when accessing Warpcore registers.

Signed-off-by: Yaniv Rosner <yanivr@broadcom.com>
Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/broadcom/bnx2x/bnx2x_link.c

index 6523723b9d1e0d1438ca5963f6e2c2816f583e2f..4ffc75dfa10ae6b165c700506a106526fc426526 100644 (file)
@@ -11308,7 +11308,9 @@ static int bnx2x_populate_int_phy(struct bnx2x *bp, u32 shmem_base, u8 port,
                                       offsetof(struct shmem_region,
                        dev_info.port_feature_config[port].link_config)) &
                          PORT_FEATURE_CONNECTED_SWITCH_MASK);
-       chip_id = REG_RD(bp, MISC_REG_CHIP_NUM) << 16;
+       chip_id = (REG_RD(bp, MISC_REG_CHIP_NUM) << 16) |
+               ((REG_RD(bp, MISC_REG_CHIP_REV) & 0xf) << 12);
+
        DP(NETIF_MSG_LINK, ":chip_id = 0x%x\n", chip_id);
        if (USES_WARPCORE(bp)) {
                u32 serdes_net_if;