summaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/ath
diff options
context:
space:
mode:
authorBen Greear <greearb@candelatech.com>2016-11-29 14:00:28 -0800
committerKalle Valo <kvalo@qca.qualcomm.com>2016-12-01 13:16:10 +0200
commit43ca92d380a85996429601f0d337cbd58b4e5bf9 (patch)
tree19ad249da7811348b2046d866413ff5334070130 /drivers/net/wireless/ath
parent9ec34a86195a65953269d3ee97b90308f469e14c (diff)
downloadop-kernel-dev-43ca92d380a85996429601f0d337cbd58b4e5bf9.zip
op-kernel-dev-43ca92d380a85996429601f0d337cbd58b4e5bf9.tar.gz
ath10k: wmi-alloc-chunk should use DMA_BIDIRECTIONAL
These memory chunks are often used as 'swap' by the NIC, so it will be both reading and writing to these areas. This seems to fix errors like this on my x86-64 machine: kernel: DMAR: DMAR:[DMA Write] Request device [05:00.0] fault addr ff5de000 DMAR:[fault reason 05] PTE Write access is not set Tested-by: Marek Behun <kabel@blackhole.sk> Signed-off-by: Ben Greear <greearb@candelatech.com> Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
Diffstat (limited to 'drivers/net/wireless/ath')
-rw-r--r--drivers/net/wireless/ath/ath10k/wmi.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/net/wireless/ath/ath10k/wmi.c b/drivers/net/wireless/ath/ath10k/wmi.c
index 95be2ba..c893314 100644
--- a/drivers/net/wireless/ath/ath10k/wmi.c
+++ b/drivers/net/wireless/ath/ath10k/wmi.c
@@ -4487,7 +4487,7 @@ static int ath10k_wmi_alloc_chunk(struct ath10k *ar, u32 req_id,
if (!num_units)
return -ENOMEM;
- paddr = dma_map_single(ar->dev, vaddr, pool_size, DMA_TO_DEVICE);
+ paddr = dma_map_single(ar->dev, vaddr, pool_size, DMA_BIDIRECTIONAL);
if (dma_mapping_error(ar->dev, paddr)) {
kfree(vaddr);
return -ENOMEM;
OpenPOWER on IntegriCloud