ath10k-ct: depend on kmod-hwmon-core, it gets used when CONFIG_THERMAL is set
[openwrt/staging/dedeckeh.git] / package / kernel / mac80211 / patches / 330-ath10k-wmi-alloc-chunk-should-use-DMA_BIDIRECTIONAL.patch
1 From: Ben Greear <greearb@candelatech.com>
2 Date: Tue, 29 Nov 2016 14:00:28 -0800
3 Subject: [PATCH] ath10k: wmi-alloc-chunk should use DMA_BIDIRECTIONAL.
4
5 These memory chunks are often used as 'swap' by the NIC,
6 so it will be both reading and writing to these areas.
7
8 This seems to fix errors like this on my x86-64 machine:
9
10 kernel: DMAR: DMAR:[DMA Write] Request device [05:00.0] fault addr ff5de000
11 DMAR:[fault reason 05] PTE Write access is not set
12
13 Tested-by: Marek Behun <kabel@blackhole.sk>
14 Signed-off-by: Ben Greear <greearb@candelatech.com>
15 ---
16
17 --- a/drivers/net/wireless/ath/ath10k/wmi.c
18 +++ b/drivers/net/wireless/ath/ath10k/wmi.c
19 @@ -4495,7 +4495,7 @@ static int ath10k_wmi_alloc_chunk(struct
20 if (!num_units)
21 return -ENOMEM;
22
23 - paddr = dma_map_single(ar->dev, vaddr, pool_size, DMA_TO_DEVICE);
24 + paddr = dma_map_single(ar->dev, vaddr, pool_size, DMA_BIDIRECTIONAL);
25 if (dma_mapping_error(ar->dev, paddr)) {
26 kfree(vaddr);
27 return -ENOMEM;