|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH] xen/arm: Specific mapping for dom0 on OMAP5 platform.
Signed-off-by: Chen Baozi <baozich@xxxxxxxxx>
---
xen/arch/arm/platforms/omap5.c | 31 +++++++++++++++++++++++++++++++
xen/include/asm-arm/platforms/omap5.h | 4 ++++
2 files changed, 35 insertions(+)
diff --git a/xen/arch/arm/platforms/omap5.c b/xen/arch/arm/platforms/omap5.c
index 402dddd..c10cf00 100644
--- a/xen/arch/arm/platforms/omap5.c
+++ b/xen/arch/arm/platforms/omap5.c
@@ -17,6 +17,7 @@
* GNU General Public License for more details.
*/
+#include <asm/p2m.h>
#include <xen/config.h>
#include <asm/platform.h>
#include <asm/platforms/omap5.h>
@@ -96,6 +97,34 @@ static int omap5_init_time(void)
return 0;
}
+/* Additional mappings for dom0 (not in the DTS) */
+static int omap5_specific_mapping(struct domain *d)
+{
+ /* Map the PRM module */
+ map_mmio_regions(d, OMAP5_PRM_BASE, OMAP5_PRM_BASE + (PAGE_SIZE * 2) - 1,
+ OMAP5_PRM_BASE);
+
+ /* Map the PRM_MPU */
+ map_mmio_regions(d, OMAP5_PRCM_MPU_BASE,
+ OMAP5_PRCM_MPU_BASE + PAGE_SIZE - 1,
+ OMAP5_PRCM_MPU_BASE);
+
+ /* Map the Wakeup Gen */
+ map_mmio_regions(d, OMAP5_WKUPGEN_BASE, OMAP5_WKUPGEN_BASE + PAGE_SIZE - 1,
+ OMAP5_WKUPGEN_BASE);
+
+ /* Map the on-chip SRAM */
+ map_mmio_regions(d, OMAP5_SRAM_PA, OMAP5_SRAM_PA + (PAGE_SIZE * 32) - 1,
+ OMAP5_SRAM_PA);
+
+ return 0;
+}
+
+static uint32_t omap5_quirks(void)
+{
+ return PLATFORM_QUIRK_DOM0_MAPPING_11;
+}
+
static const char const *omap5_dt_compat[] __initdata =
{
"ti,omap5",
@@ -105,6 +134,8 @@ static const char const *omap5_dt_compat[] __initdata =
PLATFORM_START(omap5, "TI OMAP5")
.compatible = omap5_dt_compat,
.init_time = omap5_init_time,
+ .specific_mapping = omap5_specific_mapping,
+ .quirks = omap5_quirks,
PLATFORM_END
/*
diff --git a/xen/include/asm-arm/platforms/omap5.h
b/xen/include/asm-arm/platforms/omap5.h
index a8b0937..ff6853e 100644
--- a/xen/include/asm-arm/platforms/omap5.h
+++ b/xen/include/asm-arm/platforms/omap5.h
@@ -16,6 +16,10 @@
#define OMAP_AUX_CORE_BOOT_0 0x48281800
#define OMAP_AUX_CORE_BOOT_1 0x48281804
+#define OMAP5_PRCM_MPU_BASE 0x48243000
+#define OMAP5_WKUPGEN_BASE 0x48281000
+#define OMAP5_SRAM_PA 0x40300000
+
/* Constants below is only used in assembly because the DTS is not yet parsed
*/
#ifdef __ASSEMBLY__
--
1.8.1.4
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |