diff options
author | Vladimir Kondratiev <qca_vkondrat@qca.qualcomm.com> | 2014-09-10 17:34:35 +0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2014-09-11 23:27:37 +0400 |
commit | f772ebfb941a58af9e7adf9117bc0bb4c7d22f28 (patch) | |
tree | d7d7120404be66a618e0be8d9ff36ee3382d38e4 /drivers/net/wireless/ath/wil6210/pcie_bus.c | |
parent | 8fe596274d08b12126b90c5b1092286f66ce6d65 (diff) | |
download | linux-f772ebfb941a58af9e7adf9117bc0bb4c7d22f28.tar.xz |
wil6210: platform specific module
New module (wil_platform) for handling platform specific tasks
Signed-off-by: Dedy Lansky <qca_dlansky@qca.qualcomm.com>
Signed-off-by: Vladimir Kondratiev <qca_vkondrat@qca.qualcomm.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/ath/wil6210/pcie_bus.c')
-rw-r--r-- | drivers/net/wireless/ath/wil6210/pcie_bus.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/net/wireless/ath/wil6210/pcie_bus.c b/drivers/net/wireless/ath/wil6210/pcie_bus.c index 38dcbea49d44..968f0d6d42e1 100644 --- a/drivers/net/wireless/ath/wil6210/pcie_bus.c +++ b/drivers/net/wireless/ath/wil6210/pcie_bus.c @@ -180,6 +180,10 @@ static int wil_pcie_probe(struct pci_dev *pdev, const struct pci_device_id *id) wil->board = board; wil6210_clear_irq(wil); + + wil->platform_handle = + wil_platform_init(&pdev->dev, &wil->platform_ops); + /* FW should raise IRQ when ready */ rc = wil_if_pcie_enable(wil); if (rc) { @@ -204,6 +208,8 @@ static int wil_pcie_probe(struct pci_dev *pdev, const struct pci_device_id *id) bus_disable: wil_if_pcie_disable(wil); if_free: + if (wil->platform_ops.uninit) + wil->platform_ops.uninit(wil->platform_handle); wil_if_free(wil); err_iounmap: pci_iounmap(pdev, csr); @@ -223,6 +229,8 @@ static void wil_pcie_remove(struct pci_dev *pdev) wil6210_debugfs_remove(wil); wil_if_pcie_disable(wil); wil_if_remove(wil); + if (wil->platform_ops.uninit) + wil->platform_ops.uninit(wil->platform_handle); wil_if_free(wil); pci_iounmap(pdev, csr); pci_release_region(pdev, 0); |