summaryrefslogtreecommitdiff
path: root/drivers/net/cnic.c
diff options
context:
space:
mode:
authorMichael Chan <mchan@broadcom.com>2009-12-10 18:40:57 +0300
committerDavid S. Miller <davem@davemloft.net>2009-12-12 02:07:55 +0300
commit1bcdc32cf4d94442eba79599ce8438ea0b8f78b5 (patch)
tree2b4eced89dac9c22cd24be7767318071fc747f70 /drivers/net/cnic.c
parent5fc3441349936ea6f1f95a1ef17492223c76a695 (diff)
downloadlinux-1bcdc32cf4d94442eba79599ce8438ea0b8f78b5.tar.xz
cnic: Send delete command when shutting down iSCSI ring.
This step is necessary on the bnx2x devices when restarting the iSCSI ring. Without it, the firmware can assert and cause bnx2x to report errors. Signed-off-by: Michael Chan <mchan@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/cnic.c')
-rw-r--r--drivers/net/cnic.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/net/cnic.c b/drivers/net/cnic.c
index d4c6e7fcff53..a2c33289326a 100644
--- a/drivers/net/cnic.c
+++ b/drivers/net/cnic.c
@@ -4183,6 +4183,12 @@ static void cnic_shutdown_rings(struct cnic_dev *dev)
cnic_submit_kwqe_16(dev, RAMROD_CMD_ID_ETH_HALT,
BNX2X_ISCSI_L2_CID, ETH_CONNECTION_TYPE, &l5_data);
msleep(10);
+
+ memset(&l5_data, 0, sizeof(l5_data));
+ cnic_submit_kwqe_16(dev, RAMROD_CMD_ID_ETH_CFC_DEL,
+ BNX2X_ISCSI_L2_CID, ETH_CONNECTION_TYPE |
+ (1 << SPE_HDR_COMMON_RAMROD_SHIFT), &l5_data);
+ msleep(10);
}
}