Lines Matching refs:wil
29 void wil_set_capabilities(struct wil6210_priv *wil) in wil_set_capabilities() argument
31 u32 rev_id = wil_r(wil, RGF_USER_JTAG_DEV_ID); in wil_set_capabilities()
33 bitmap_zero(wil->hw_capabilities, hw_capability_last); in wil_set_capabilities()
37 wil->hw_name = "Sparrow B0"; in wil_set_capabilities()
38 wil->hw_version = HW_VER_SPARROW_B0; in wil_set_capabilities()
41 wil_err(wil, "Unknown board hardware 0x%08x\n", rev_id); in wil_set_capabilities()
42 wil->hw_name = "Unknown"; in wil_set_capabilities()
43 wil->hw_version = HW_VER_UNKNOWN; in wil_set_capabilities()
46 wil_info(wil, "Board hardware is %s\n", wil->hw_name); in wil_set_capabilities()
49 void wil_disable_irq(struct wil6210_priv *wil) in wil_disable_irq() argument
51 disable_irq(wil->pdev->irq); in wil_disable_irq()
54 void wil_enable_irq(struct wil6210_priv *wil) in wil_enable_irq() argument
56 enable_irq(wil->pdev->irq); in wil_enable_irq()
60 static int wil_if_pcie_enable(struct wil6210_priv *wil) in wil_if_pcie_enable() argument
62 struct pci_dev *pdev = wil->pdev; in wil_if_pcie_enable()
71 wil_dbg_misc(wil, "%s()\n", __func__); in wil_if_pcie_enable()
77 wil_dbg_misc(wil, "Setup %s interrupt\n", use_msi ? "MSI" : "INTx"); in wil_if_pcie_enable()
80 wil_err(wil, "pci_enable_msi failed, use INTx\n"); in wil_if_pcie_enable()
85 wil_err(wil, "Interrupt pin not routed, unable to use INTx\n"); in wil_if_pcie_enable()
90 rc = wil6210_init_irq(wil, pdev->irq, _use_msi); in wil_if_pcie_enable()
95 mutex_lock(&wil->mutex); in wil_if_pcie_enable()
96 rc = wil_reset(wil, false); in wil_if_pcie_enable()
97 mutex_unlock(&wil->mutex); in wil_if_pcie_enable()
104 wil6210_fini_irq(wil, pdev->irq); in wil_if_pcie_enable()
112 static int wil_if_pcie_disable(struct wil6210_priv *wil) in wil_if_pcie_disable() argument
114 struct pci_dev *pdev = wil->pdev; in wil_if_pcie_disable()
116 wil_dbg_misc(wil, "%s()\n", __func__); in wil_if_pcie_disable()
120 wil6210_fini_irq(wil, pdev->irq); in wil_if_pcie_disable()
130 struct wil6210_priv *wil; in wil_pcie_probe() local
146 wil = wil_if_alloc(dev); in wil_pcie_probe()
147 if (IS_ERR(wil)) { in wil_pcie_probe()
148 rc = (int)PTR_ERR(wil); in wil_pcie_probe()
152 wil->pdev = pdev; in wil_pcie_probe()
153 pci_set_drvdata(pdev, wil); in wil_pcie_probe()
156 wil->platform_handle = in wil_pcie_probe()
157 wil_platform_init(&pdev->dev, &wil->platform_ops); in wil_pcie_probe()
158 if (!wil->platform_handle) { in wil_pcie_probe()
160 wil_err(wil, "wil_platform_init failed\n"); in wil_pcie_probe()
167 wil_err(wil, in wil_pcie_probe()
176 wil_err(wil, in wil_pcie_probe()
184 wil_err(wil, "pci_request_region failed\n"); in wil_pcie_probe()
189 wil->csr = pci_ioremap_bar(pdev, 0); in wil_pcie_probe()
190 if (!wil->csr) { in wil_pcie_probe()
191 wil_err(wil, "pci_ioremap_bar failed\n"); in wil_pcie_probe()
196 wil_info(wil, "CSR at %pR -> 0x%p\n", &pdev->resource[0], wil->csr); in wil_pcie_probe()
198 wil_set_capabilities(wil); in wil_pcie_probe()
199 wil6210_clear_irq(wil); in wil_pcie_probe()
202 rc = wil_if_pcie_enable(wil); in wil_pcie_probe()
204 wil_err(wil, "Enable device failed\n"); in wil_pcie_probe()
209 rc = wil_if_add(wil); in wil_pcie_probe()
211 wil_err(wil, "wil_if_add failed: %d\n", rc); in wil_pcie_probe()
215 wil6210_debugfs_init(wil); in wil_pcie_probe()
221 wil_if_pcie_disable(wil); in wil_pcie_probe()
223 pci_iounmap(pdev, wil->csr); in wil_pcie_probe()
229 if (wil->platform_ops.uninit) in wil_pcie_probe()
230 wil->platform_ops.uninit(wil->platform_handle); in wil_pcie_probe()
232 wil_if_free(wil); in wil_pcie_probe()
239 struct wil6210_priv *wil = pci_get_drvdata(pdev); in wil_pcie_remove() local
240 void __iomem *csr = wil->csr; in wil_pcie_remove()
242 wil_dbg_misc(wil, "%s()\n", __func__); in wil_pcie_remove()
244 wil6210_debugfs_remove(wil); in wil_pcie_remove()
245 wil_if_remove(wil); in wil_pcie_remove()
246 wil_if_pcie_disable(wil); in wil_pcie_remove()
250 if (wil->platform_ops.uninit) in wil_pcie_remove()
251 wil->platform_ops.uninit(wil->platform_handle); in wil_pcie_remove()
252 wil_if_free(wil); in wil_pcie_remove()
269 struct wil6210_priv *wil = pci_get_drvdata(pdev); in wil6210_suspend() local
271 wil_dbg_pm(wil, "%s(%s)\n", __func__, in wil6210_suspend()
274 rc = wil_can_suspend(wil, is_runtime); in wil6210_suspend()
278 rc = wil_suspend(wil, is_runtime); in wil6210_suspend()
296 struct wil6210_priv *wil = pci_get_drvdata(pdev); in wil6210_resume() local
298 wil_dbg_pm(wil, "%s(%s)\n", __func__, in wil6210_resume()
304 rc = wil_resume(wil, is_runtime); in wil6210_resume()