summaryrefslogtreecommitdiff
path: root/drivers/net/ethernet/broadcom/bnx2x/bnx2x_link.c
diff options
context:
space:
mode:
authorYuval Mintz <yuvalmin@broadcom.com>2012-09-10 09:51:04 +0400
committerDavid S. Miller <davem@davemloft.net>2012-09-11 00:40:29 +0400
commit08e9acc25a60e845101840ce6db368dc6d77c3c1 (patch)
treebf539dd8f8fe55bb125447872d6507ae60adc092 /drivers/net/ethernet/broadcom/bnx2x/bnx2x_link.c
parentfdd6681d92a70b3db73cdb61c6b4053f2f8003b3 (diff)
downloadlinux-08e9acc25a60e845101840ce6db368dc6d77c3c1.tar.xz
bnx2x: EEE status is read locally
This patch aligns the EEE status with that of all other link properties, by changing the way its accessed - instead of a direct read to the shared memory, each function maintain its own copy locally. Signed-off-by: Yuval Mintz <yuvalmin@broadcom.com> Signed-off-by: Eilon Greenstein <eilong@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/broadcom/bnx2x/bnx2x_link.c')
-rw-r--r--drivers/net/ethernet/broadcom/bnx2x/bnx2x_link.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_link.c b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_link.c
index f4beb46c4709..14afa1759378 100644
--- a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_link.c
+++ b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_link.c
@@ -4716,6 +4716,10 @@ void bnx2x_link_status_update(struct link_params *params,
vars->link_status = REG_RD(bp, params->shmem_base +
offsetof(struct shmem_region,
port_mb[port].link_status));
+ if (bnx2x_eee_has_cap(params))
+ vars->eee_status = REG_RD(bp, params->shmem2_base +
+ offsetof(struct shmem2_region,
+ eee_status[params->port]));
vars->phy_flags = PHY_XGXS_FLAG;
bnx2x_sync_link(params, vars);