* [PATCH net 1/3] qlcnic: Fix set driver version command
2013-08-15 12:29 [PATCH net 0/3] qlcnic: bug fixes Sucheta Chakraborty
@ 2013-08-15 12:29 ` Sucheta Chakraborty
2013-08-15 12:29 ` [PATCH net 2/3] qlcnic: Fix beacon state return status handling Sucheta Chakraborty
` (2 subsequent siblings)
3 siblings, 0 replies; 5+ messages in thread
From: Sucheta Chakraborty @ 2013-08-15 12:29 UTC (permalink / raw)
To: davem; +Cc: netdev, Dept-HSGLinuxNICDev, Himanshu Madhani
From: Himanshu Madhani <himanshu.madhani@qlogic.com>
Driver was issuing set driver version command through all
functions in the adapter. Fix the driver to issue set driver
version once per adapter, through function 0.
Signed-off-by: Himanshu Madhani <himanshu.madhani@qlogic.com>
Signed-off-by: Sucheta Chakraborty <sucheta.chakraborty@qlogic.com>
---
drivers/net/ethernet/qlogic/qlcnic/qlcnic_83xx_init.c | 3 ++-
drivers/net/ethernet/qlogic/qlcnic/qlcnic_main.c | 6 ++++--
2 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/drivers/net/ethernet/qlogic/qlcnic/qlcnic_83xx_init.c b/drivers/net/ethernet/qlogic/qlcnic/qlcnic_83xx_init.c
index 9f4b8d5..345d987 100644
--- a/drivers/net/ethernet/qlogic/qlcnic/qlcnic_83xx_init.c
+++ b/drivers/net/ethernet/qlogic/qlcnic/qlcnic_83xx_init.c
@@ -629,7 +629,8 @@ int qlcnic_83xx_idc_reattach_driver(struct qlcnic_adapter *adapter)
return -EIO;
}
- qlcnic_set_drv_version(adapter);
+ if (adapter->portnum == 0)
+ qlcnic_set_drv_version(adapter);
qlcnic_83xx_idc_attach_driver(adapter);
return 0;
diff --git a/drivers/net/ethernet/qlogic/qlcnic/qlcnic_main.c b/drivers/net/ethernet/qlogic/qlcnic/qlcnic_main.c
index ee013fc..bc05d01 100644
--- a/drivers/net/ethernet/qlogic/qlcnic/qlcnic_main.c
+++ b/drivers/net/ethernet/qlogic/qlcnic/qlcnic_main.c
@@ -2165,7 +2165,8 @@ qlcnic_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
if (err)
goto err_out_disable_mbx_intr;
- qlcnic_set_drv_version(adapter);
+ if (adapter->portnum == 0)
+ qlcnic_set_drv_version(adapter);
pci_set_drvdata(pdev, adapter);
@@ -3085,7 +3086,8 @@ done:
adapter->fw_fail_cnt = 0;
adapter->flags &= ~QLCNIC_FW_HANG;
clear_bit(__QLCNIC_RESETTING, &adapter->state);
- qlcnic_set_drv_version(adapter);
+ if (adapter->portnum == 0)
+ qlcnic_set_drv_version(adapter);
if (!qlcnic_clr_drv_state(adapter))
qlcnic_schedule_work(adapter, qlcnic_fw_poll_work,
--
1.8.1.4
^ permalink raw reply related [flat|nested] 5+ messages in thread* [PATCH net 2/3] qlcnic: Fix beacon state return status handling
2013-08-15 12:29 [PATCH net 0/3] qlcnic: bug fixes Sucheta Chakraborty
2013-08-15 12:29 ` [PATCH net 1/3] qlcnic: Fix set driver version command Sucheta Chakraborty
@ 2013-08-15 12:29 ` Sucheta Chakraborty
2013-08-15 12:29 ` [PATCH net 3/3] qlcnic: Fix diagnostic interrupt test for 83xx adapters Sucheta Chakraborty
2013-08-15 21:35 ` [PATCH net 0/3] qlcnic: bug fixes David Miller
3 siblings, 0 replies; 5+ messages in thread
From: Sucheta Chakraborty @ 2013-08-15 12:29 UTC (permalink / raw)
To: davem; +Cc: netdev, Dept-HSGLinuxNICDev
o Driver was misinterpreting the return status for beacon
state query leading to incorrect interpretation of beacon
state and logging an error message for successful status.
Fixed the driver to properly interpret the return status.
Signed-off-by: Sucheta Chakraborty <sucheta.chakraborty@qlogic.com>
---
drivers/net/ethernet/qlogic/qlcnic/qlcnic_sysfs.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/drivers/net/ethernet/qlogic/qlcnic/qlcnic_sysfs.c b/drivers/net/ethernet/qlogic/qlcnic/qlcnic_sysfs.c
index 10ed82b..660c3f5 100644
--- a/drivers/net/ethernet/qlogic/qlcnic/qlcnic_sysfs.c
+++ b/drivers/net/ethernet/qlogic/qlcnic/qlcnic_sysfs.c
@@ -170,9 +170,9 @@ static int qlcnic_82xx_store_beacon(struct qlcnic_adapter *adapter,
if (ahw->extra_capability[0] & QLCNIC_FW_CAPABILITY_2_BEACON) {
err = qlcnic_get_beacon_state(adapter, &h_beacon_state);
- if (!err) {
- dev_info(&adapter->pdev->dev,
- "Failed to get current beacon state\n");
+ if (err) {
+ netdev_err(adapter->netdev,
+ "Failed to get current beacon state\n");
} else {
if (h_beacon_state == QLCNIC_BEACON_DISABLE)
ahw->beacon_state = 0;
--
1.8.1.4
^ permalink raw reply related [flat|nested] 5+ messages in thread* [PATCH net 3/3] qlcnic: Fix diagnostic interrupt test for 83xx adapters
2013-08-15 12:29 [PATCH net 0/3] qlcnic: bug fixes Sucheta Chakraborty
2013-08-15 12:29 ` [PATCH net 1/3] qlcnic: Fix set driver version command Sucheta Chakraborty
2013-08-15 12:29 ` [PATCH net 2/3] qlcnic: Fix beacon state return status handling Sucheta Chakraborty
@ 2013-08-15 12:29 ` Sucheta Chakraborty
2013-08-15 21:35 ` [PATCH net 0/3] qlcnic: bug fixes David Miller
3 siblings, 0 replies; 5+ messages in thread
From: Sucheta Chakraborty @ 2013-08-15 12:29 UTC (permalink / raw)
To: davem; +Cc: netdev, Dept-HSGLinuxNICDev, Manish Chopra
From: Manish Chopra <manish.chopra@qlogic.com>
o Do not allow interrupt test when adapter is resetting.
Signed-off-by: Manish Chopra <manish.chopra@qlogic.com>
Signed-off-by: Sucheta Chakraborty <sucheta.chakraborty@qlogic.com>
---
drivers/net/ethernet/qlogic/qlcnic/qlcnic_83xx_hw.c | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/drivers/net/ethernet/qlogic/qlcnic/qlcnic_83xx_hw.c b/drivers/net/ethernet/qlogic/qlcnic/qlcnic_83xx_hw.c
index 92da998..9d4bb7f 100644
--- a/drivers/net/ethernet/qlogic/qlcnic/qlcnic_83xx_hw.c
+++ b/drivers/net/ethernet/qlogic/qlcnic/qlcnic_83xx_hw.c
@@ -3266,6 +3266,11 @@ int qlcnic_83xx_interrupt_test(struct net_device *netdev)
u8 val;
int ret, max_sds_rings = adapter->max_sds_rings;
+ if (test_bit(__QLCNIC_RESETTING, &adapter->state)) {
+ netdev_info(netdev, "Device is resetting\n");
+ return -EBUSY;
+ }
+
if (qlcnic_get_diag_lock(adapter)) {
netdev_info(netdev, "Device in diagnostics mode\n");
return -EBUSY;
--
1.8.1.4
^ permalink raw reply related [flat|nested] 5+ messages in thread* Re: [PATCH net 0/3] qlcnic: bug fixes
2013-08-15 12:29 [PATCH net 0/3] qlcnic: bug fixes Sucheta Chakraborty
` (2 preceding siblings ...)
2013-08-15 12:29 ` [PATCH net 3/3] qlcnic: Fix diagnostic interrupt test for 83xx adapters Sucheta Chakraborty
@ 2013-08-15 21:35 ` David Miller
3 siblings, 0 replies; 5+ messages in thread
From: David Miller @ 2013-08-15 21:35 UTC (permalink / raw)
To: sucheta.chakraborty; +Cc: netdev, Dept-HSGLinuxNICDev
From: Sucheta Chakraborty <sucheta.chakraborty@qlogic.com>
Date: Thu, 15 Aug 2013 08:29:26 -0400
> Please apply to net.
Series applied, thanks.
^ permalink raw reply [flat|nested] 5+ messages in thread