summaryrefslogtreecommitdiffstats
path: root/target/linux/apm821xx/patches-4.19/010-dt-bindings-dmaengine-dw-dmac-add-protection-control.patch
diff options
context:
space:
mode:
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.patch74
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__ */