aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRajesh Borundia <rajesh.borundia@qlogic.com>2014-08-04 11:51:17 -0400
committerDavid S. Miller <davem@davemloft.net>2014-08-05 19:23:26 -0400
commitbf63014f108aaff49e4382b7adc7d0a2b6365744 (patch)
tree0744c8ac82eb3e415cde847308f68fe17b66ee2e
parenta0eaf75c03712b491b7a840b5836c8f1e2a09277 (diff)
qlcnic: Set driver version before registering netdev
o Earlier, set_drv_version was getting called after register_netdev. This was resulting in a race between set_drv_version and FLR called from open(). Moving set_drv_version before register_netdev avoids the race. o Log response code in error message on CDRP failure. Signed-off-by: Rajesh Borundia <rajesh.borundia@qlogic.com> Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--drivers/net/ethernet/qlogic/qlcnic/qlcnic_ctx.c2
-rw-r--r--drivers/net/ethernet/qlogic/qlcnic/qlcnic_main.c6
2 files changed, 4 insertions, 4 deletions
diff --git a/drivers/net/ethernet/qlogic/qlcnic/qlcnic_ctx.c b/drivers/net/ethernet/qlogic/qlcnic/qlcnic_ctx.c
index 304e247bdf33..ffbae293cef5 100644
--- a/drivers/net/ethernet/qlogic/qlcnic/qlcnic_ctx.c
+++ b/drivers/net/ethernet/qlogic/qlcnic/qlcnic_ctx.c
@@ -136,7 +136,7 @@ int qlcnic_82xx_issue_cmd(struct qlcnic_adapter *adapter,
136 rsp = qlcnic_poll_rsp(adapter); 136 rsp = qlcnic_poll_rsp(adapter);
137 137
138 if (rsp == QLCNIC_CDRP_RSP_TIMEOUT) { 138 if (rsp == QLCNIC_CDRP_RSP_TIMEOUT) {
139 dev_err(&pdev->dev, "card response timeout.\n"); 139 dev_err(&pdev->dev, "command timeout, response = 0x%x\n", rsp);
140 cmd->rsp.arg[0] = QLCNIC_RCODE_TIMEOUT; 140 cmd->rsp.arg[0] = QLCNIC_RCODE_TIMEOUT;
141 } else if (rsp == QLCNIC_CDRP_RSP_FAIL) { 141 } else if (rsp == QLCNIC_CDRP_RSP_FAIL) {
142 cmd->rsp.arg[0] = QLCRD32(adapter, QLCNIC_CDRP_ARG(1), &err); 142 cmd->rsp.arg[0] = QLCRD32(adapter, QLCNIC_CDRP_ARG(1), &err);
diff --git a/drivers/net/ethernet/qlogic/qlcnic/qlcnic_main.c b/drivers/net/ethernet/qlogic/qlcnic/qlcnic_main.c
index 4fc186713b66..158e1d9f255f 100644
--- a/drivers/net/ethernet/qlogic/qlcnic/qlcnic_main.c
+++ b/drivers/net/ethernet/qlogic/qlcnic/qlcnic_main.c
@@ -2623,13 +2623,13 @@ qlcnic_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
2623 if (err) 2623 if (err)
2624 goto err_out_disable_mbx_intr; 2624 goto err_out_disable_mbx_intr;
2625 2625
2626 if (adapter->portnum == 0)
2627 qlcnic_set_drv_version(adapter);
2628
2626 err = qlcnic_setup_netdev(adapter, netdev, pci_using_dac); 2629 err = qlcnic_setup_netdev(adapter, netdev, pci_using_dac);
2627 if (err) 2630 if (err)
2628 goto err_out_disable_mbx_intr; 2631 goto err_out_disable_mbx_intr;
2629 2632
2630 if (adapter->portnum == 0)
2631 qlcnic_set_drv_version(adapter);
2632
2633 pci_set_drvdata(pdev, adapter); 2633 pci_set_drvdata(pdev, adapter);
2634 2634
2635 if (qlcnic_82xx_check(adapter)) 2635 if (qlcnic_82xx_check(adapter))