of/device: Set bus DMA mask as appropriate

When an explicit DMA limit is described by firmware, we need to remember
it regardless of how drivers might subsequently update their devices'
masks. The new bus_dma_mask field does that.

Signed-off-by: Robin Murphy <[email protected]>
Acked-by: Ard Biesheuvel <[email protected]>
Signed-off-by: Christoph Hellwig <[email protected]>
This commit is contained in:
Robin Murphy authored and Christoph Hellwig committed 2018-07-27 19:01:05 +02:00
1 parent d74ea7100b
commit 6c2fb2ea76
1 file changed
+1
+1
View File
@@ -149,6 +149,7 @@ int of_dma_configure(struct device *dev, struct device_node *np, bool force_dma)
* set by the driver.
*/
mask = DMA_BIT_MASK(ilog2(dma_addr + size - 1) + 1);
dev->bus_dma_mask = mask;
dev->coherent_dma_mask &= mask;
*dev->dma_mask &= mask;