mirror of https://github.com/hak5/openwrt.git
75 lines
2.8 KiB
Diff
75 lines
2.8 KiB
Diff
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__ */
|