summaryrefslogtreecommitdiff
path: root/drivers/net
diff options
context:
space:
mode:
authorHamad Kadmany <hkadmany@codeaurora.org>2017-02-20 10:33:41 +0200
committerHamad Kadmany <hkadmany@codeaurora.org>2017-02-20 10:33:41 +0200
commit275e85d9e1916d8a507429760d6f25fd6ea63015 (patch)
treeecff59b2be46dc7df9ead7a5e4ccd803b649bc55 /drivers/net
parent5a092dc83c9502d6d33fa39f12bd4d9552d5294f (diff)
wil6210: Move dma mask setting after platform initialization
Platform specific initialization may initialize SMMU (if available) which updates dma operations, therefore setting of DMA mask needs to be done after platform specific initialization. Change-Id: I7b0e90e5e3d03816146f2f73a55dc858e03646dd Signed-off-by: Hamad Kadmany <hkadmany@codeaurora.org>
Diffstat (limited to 'drivers/net')
-rw-r--r--drivers/net/wireless/ath/wil6210/pcie_bus.c30
1 files changed, 15 insertions, 15 deletions
diff --git a/drivers/net/wireless/ath/wil6210/pcie_bus.c b/drivers/net/wireless/ath/wil6210/pcie_bus.c
index 31b45912265f..b38515fc7ce7 100644
--- a/drivers/net/wireless/ath/wil6210/pcie_bus.c
+++ b/drivers/net/wireless/ath/wil6210/pcie_bus.c
@@ -212,21 +212,6 @@ static int wil_pcie_probe(struct pci_dev *pdev, const struct pci_device_id *id)
return rc;
}
- /* device supports 48 bit addresses */
- rc = dma_set_mask_and_coherent(dev, DMA_BIT_MASK(48));
- if (rc) {
- dev_err(dev, "dma_set_mask_and_coherent(48) failed: %d\n", rc);
- rc = dma_set_mask_and_coherent(dev, DMA_BIT_MASK(32));
- if (rc) {
- dev_err(dev,
- "dma_set_mask_and_coherent(32) failed: %d\n",
- rc);
- goto if_free;
- }
- } else {
- wil->use_extended_dma_addr = 1;
- }
-
wil->pdev = pdev;
pci_set_drvdata(pdev, wil);
/* rollback to if_free */
@@ -240,6 +225,21 @@ static int wil_pcie_probe(struct pci_dev *pdev, const struct pci_device_id *id)
}
/* rollback to err_plat */
+ /* device supports 48bit addresses */
+ rc = dma_set_mask_and_coherent(dev, DMA_BIT_MASK(48));
+ if (rc) {
+ dev_err(dev, "dma_set_mask_and_coherent(48) failed: %d\n", rc);
+ rc = dma_set_mask_and_coherent(dev, DMA_BIT_MASK(32));
+ if (rc) {
+ dev_err(dev,
+ "dma_set_mask_and_coherent(32) failed: %d\n",
+ rc);
+ goto err_plat;
+ }
+ } else {
+ wil->use_extended_dma_addr = 1;
+ }
+
rc = pci_enable_device(pdev);
if (rc) {
wil_err(wil,