]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
wil6210: ignore reset errors for FW during probe
authorLior David <liord@codeaurora.org>
Tue, 10 Sep 2019 13:46:43 +0000 (16:46 +0300)
committerKalle Valo <kvalo@codeaurora.org>
Thu, 12 Sep 2019 15:07:56 +0000 (18:07 +0300)
There are special kinds of FW such as WMI only which
are used for testing, diagnostics and other specific
scenario.
Such FW is loaded during driver probe and the driver
disallows enabling any network interface, to avoid
operational issues.
In many cases it is used to debug early versions
of FW with new features, which sometimes fail
on startup.
Currently when such FW fails to load (for example,
because of init failure), the driver probe would fail
and shutdown the device making it difficult to debug
the early failure.
To fix this, ignore load failures in WMI only FW and
allow driver probe to succeed, making it possible to
continue and debug the FW load failure.

Signed-off-by: Lior David <liord@codeaurora.org>
Signed-off-by: Maya Erez <merez@codeaurora.org>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
drivers/net/wireless/ath/wil6210/pcie_bus.c

index 9f5a914abc189135487c26bb1aa6c25939a169b5..18dd8b246022acdf3bc0bdc557a36bc24ecb5cdb 100644 (file)
@@ -435,7 +435,7 @@ static int wil_pcie_probe(struct pci_dev *pdev, const struct pci_device_id *id)
                mutex_unlock(&wil->mutex);
                if (rc) {
                        wil_err(wil, "failed to load WMI only FW\n");
-                       goto if_remove;
+                       /* ignore the error to allow debugging */
                }
        }
 
@@ -455,8 +455,6 @@ static int wil_pcie_probe(struct pci_dev *pdev, const struct pci_device_id *id)
 
        return 0;
 
-if_remove:
-       wil_if_remove(wil);
 bus_disable:
        wil_if_pcie_disable(wil);
 err_iounmap: