aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/broadcom/bnx2x
diff options
context:
space:
mode:
authorBarak Witkowski <barak@broadcom.com>2012-12-01 23:05:57 -0500
committerDavid S. Miller <davem@davemloft.net>2012-12-02 20:23:01 -0500
commit049b467d7a57e7b978ce063ee3639670f383fb5c (patch)
treecbff13ebf663575da31d962cf7e30cd28420a037 /drivers/net/ethernet/broadcom/bnx2x
parentcd1dfce2ed571bc3d1962987b5c7d2d6e936bb27 (diff)
bnx2x: Correct PFC disablement
bnx2x driver could only have enabled pfc via usage of dcbnl; now, it can also correctly disable it. Signed-off-by: Barak Witkowski <barak@broadcom.com> 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')
-rw-r--r--drivers/net/ethernet/broadcom/bnx2x/bnx2x_dcb.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_dcb.c b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_dcb.c
index c8c034027ce5..10bc093d2ca4 100644
--- a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_dcb.c
+++ b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_dcb.c
@@ -2052,10 +2052,13 @@ static void bnx2x_dcbnl_set_pfc_cfg(struct net_device *netdev, int prio,
2052 if (!bnx2x_dcbnl_set_valid(bp) || prio >= MAX_PFC_PRIORITIES) 2052 if (!bnx2x_dcbnl_set_valid(bp) || prio >= MAX_PFC_PRIORITIES)
2053 return; 2053 return;
2054 2054
2055 bp->dcbx_config_params.admin_pfc_bitmap |= ((setting ? 1 : 0) << prio);
2056 2055
2057 if (setting) 2056 if (setting) {
2057 bp->dcbx_config_params.admin_pfc_bitmap |= (1 << prio);
2058 bp->dcbx_config_params.admin_pfc_tx_enable = 1; 2058 bp->dcbx_config_params.admin_pfc_tx_enable = 1;
2059 } else {
2060 bp->dcbx_config_params.admin_pfc_bitmap &= ~(1 << prio);
2061 }
2059} 2062}
2060 2063
2061static void bnx2x_dcbnl_get_pfc_cfg(struct net_device *netdev, int prio, 2064static void bnx2x_dcbnl_get_pfc_cfg(struct net_device *netdev, int prio,