]> xenbits.xensource.com Git - people/sstabellini/xen-unstable.git/.git/commitdiff
xen: mediate EEMI TCM calls
authorStewart Hildebrand <Stewart.Hildebrand@dornerworks.com>
Fri, 31 May 2019 20:26:13 +0000 (13:26 -0700)
committerStefano Stabellini <sstabellini@kernel.org>
Wed, 4 Dec 2019 23:58:10 +0000 (15:58 -0800)
It is necessary to allow a DomU to issue EEMI power management
operations on TCM nodes when running OpenAMP in a DomU. Introduce the
TCM nodes in xilinx-zynqmp-eemi.c, so that they are allowed to do so
when the TCM regions are assigned to the domU (they are subject to the
usual permissions checks.)

Signed-off-by: Stewart Hildebrand <Stewart.Hildebrand@dornerworks.com>
Signed-off-by: Stefano Stabellini <stefanos@xilinx.com>
Acked-by: Stefano Stabellini <sstabellini@kernel.org>
xen/arch/arm/platforms/xilinx-zynqmp-eemi.c
xen/include/asm-arm/platforms/xilinx-zynqmp-mm.h

index a97fe18067b45fbced6158148366b95e3b3f5b23..6ca31bac6384d37fb0e25d58e716c2f1dace947e 100644 (file)
@@ -165,6 +165,11 @@ static const struct pm_access pm_node_access[] = {
 
     [NODE_PCIE] = { MM_PCIE_ATTRIB },
     [NODE_RTC] = { MM_RTC },
+
+    [NODE_TCM_0_A] = { MM_TCM_0_A },
+    [NODE_TCM_0_B] = { MM_TCM_0_B },
+    [NODE_TCM_1_A] = { MM_TCM_1_A },
+    [NODE_TCM_1_B] = { MM_TCM_1_B },
 };
 
 /*
index db9f43e2944ea29e4d1cffaa4fa6980f0cc75d3b..47921ad28b9af326b40078d57674b8f4919271da 100644 (file)
 #define MM_PMU_GLOBAL           0xffd80000
 #define MM_CSU                  0xffca0000
 
+#define MM_TCM_0_A 0xffe00000
+#define MM_TCM_0_B 0xffe20000
+#define MM_TCM_1_A 0xffe90000
+#define MM_TCM_1_B 0xffeb0000
+
 /* Selected set of register definitions:  */
 #define R_CRF_APLL_CTRL           0x20
 #define R_CRF_ACPU_CTRL           0x60