From: Michael Chan Date: Wed, 2 Dec 2009 15:15:36 +0000 (+0000) Subject: cnic: Fix bnx2x ring shutdown. X-Git-Tag: accepted/tizen/common/20141203.182822~13596^2~65 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=8b065b671d3096bfe0dbc9a833cb592f84642436;p=platform%2Fkernel%2Flinux-arm64.git cnic: Fix bnx2x ring shutdown. Need to send a HALT command to the firmware to fully shutdown the bnx2x rings. Signed-off-by: Michael Chan Signed-off-by: Benjamin Li Signed-off-by: David S. Miller --- diff --git a/drivers/net/cnic.c b/drivers/net/cnic.c index 10c5cc3..fb1cadb 100644 --- a/drivers/net/cnic.c +++ b/drivers/net/cnic.c @@ -4164,8 +4164,15 @@ static void cnic_shutdown_rings(struct cnic_dev *dev) } else if (test_bit(CNIC_F_BNX2X_CLASS, &dev->flags)) { struct cnic_local *cp = dev->cnic_priv; u32 cli = BNX2X_ISCSI_CL_ID(CNIC_E1HVN(cp)); + union l5cm_specific_data l5_data; cnic_ring_ctl(dev, BNX2X_ISCSI_L2_CID, cli, 0); + + l5_data.phy_address.lo = cli; + l5_data.phy_address.hi = 0; + cnic_submit_kwqe_16(dev, RAMROD_CMD_ID_ETH_HALT, + BNX2X_ISCSI_L2_CID, ETH_CONNECTION_TYPE, &l5_data); + msleep(10); } }