diff options
Diffstat (limited to 'target/linux/apm821xx/patches-4.19/010-dt-bindings-dmaengine-dw-dmac-add-protection-control.patch')
-rw-r--r-- | target/linux/apm821xx/patches-4.19/010-dt-bindings-dmaengine-dw-dmac-add-protection-control.patch | 74 |
1 files changed, 74 insertions, 0 deletions
diff --git a/target/linux/apm821xx/patches-4.19/010-dt-bindings-dmaengine-dw-dmac-add-protection-control.patch b/target/linux/apm821xx/patches-4.19/010-dt-bindings-dmaengine-dw-dmac-add-protection-control.patch new file mode 100644 index 0000000000..572b8b6522 --- /dev/null +++ b/target/linux/apm821xx/patches-4.19/010-dt-bindings-dmaengine-dw-dmac-add-protection-control.patch @@ -0,0 +1,74 @@ +From 538098281ce884a51d2aa4ab445056a41741c6ad Mon Sep 17 00:00:00 2001 +From: Christian Lamparter <chunkeey@gmail.com> +Date: Sat, 17 Nov 2018 17:17:20 +0100 +Subject: [PATCH] dt-bindings: dmaengine: dw-dmac: add protection control + property + +This patch for the DesignWare AHB Central +Direct Memory Access Controller adds the dma +protection control property: + "snps,dma-protection-control" + +as well as the properties specific values defines into +a new include file: include/dt-bindings/dma/dw-dmac.h + +Note: The protection control signals are one-to-one +mapped to the AHB HPROT[1:3] signals for this controller. +The HPROT0 (Data Access) is always hardwired to 1. + +Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> +Reviewed-by: Rob Herring <robh@kernel.org> +Signed-off-by: Christian Lamparter <chunkeey@gmail.com> +Signed-off-by: Vinod Koul <vkoul@kernel.org> +--- + Documentation/devicetree/bindings/dma/snps-dma.txt | 4 ++++ + MAINTAINERS | 4 +++- + include/dt-bindings/dma/dw-dmac.h | 14 ++++++++++++++ + 3 files changed, 21 insertions(+), 1 deletion(-) + create mode 100644 include/dt-bindings/dma/dw-dmac.h + +--- a/Documentation/devicetree/bindings/dma/snps-dma.txt ++++ b/Documentation/devicetree/bindings/dma/snps-dma.txt +@@ -27,6 +27,10 @@ Optional properties: + general purpose DMA channel allocator. False if not passed. + - multi-block: Multi block transfers supported by hardware. Array property with + one cell per channel. 0: not supported, 1 (default): supported. ++- snps,dma-protection-control: AHB HPROT[3:1] protection setting. ++ The default value is 0 (for non-cacheable, non-buffered, ++ unprivileged data access). ++ Refer to include/dt-bindings/dma/dw-dmac.h for possible values. + + Example: + +--- a/MAINTAINERS ++++ b/MAINTAINERS +@@ -14075,9 +14075,11 @@ SYNOPSYS DESIGNWARE DMAC DRIVER + M: Viresh Kumar <vireshk@kernel.org> + R: Andy Shevchenko <andriy.shevchenko@linux.intel.com> + S: Maintained ++F: Documentation/devicetree/bindings/dma/snps-dma.txt ++F: drivers/dma/dw/ ++F: include/dt-bindings/dma/dw-dmac.h + F: include/linux/dma/dw.h + F: include/linux/platform_data/dma-dw.h +-F: drivers/dma/dw/ + + SYNOPSYS DESIGNWARE ENTERPRISE ETHERNET DRIVER + M: Jose Abreu <Jose.Abreu@synopsys.com> +--- /dev/null ++++ b/include/dt-bindings/dma/dw-dmac.h +@@ -0,0 +1,14 @@ ++/* SPDX-License-Identifier: (GPL-2.0 OR MIT) */ ++ ++#ifndef __DT_BINDINGS_DMA_DW_DMAC_H__ ++#define __DT_BINDINGS_DMA_DW_DMAC_H__ ++ ++/* ++ * Protection Control bits provide protection against illegal transactions. ++ * The protection bits[0:2] are one-to-one mapped to AHB HPROT[3:1] signals. ++ */ ++#define DW_DMAC_HPROT1_PRIVILEGED_MODE (1 << 0) /* Privileged Mode */ ++#define DW_DMAC_HPROT2_BUFFERABLE (1 << 1) /* DMA is bufferable */ ++#define DW_DMAC_HPROT3_CACHEABLE (1 << 2) /* DMA is cacheable */ ++ ++#endif /* __DT_BINDINGS_DMA_DW_DMAC_H__ */ |