aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--arch/arm/boot/dts/xenvm-4.2.dts68
-rw-r--r--arch/arm/mach-vexpress/Makefile.boot3
-rw-r--r--arch/arm/mach-vexpress/v2m.c1
3 files changed, 71 insertions, 1 deletions
diff --git a/arch/arm/boot/dts/xenvm-4.2.dts b/arch/arm/boot/dts/xenvm-4.2.dts
new file mode 100644
index 000000000000..ec3f9528e180
--- /dev/null
+++ b/arch/arm/boot/dts/xenvm-4.2.dts
@@ -0,0 +1,68 @@
1/*
2 * Xen Virtual Machine for unprivileged guests
3 *
4 * Based on ARM Ltd. Versatile Express CoreTile Express (single CPU)
5 * Cortex-A15 MPCore (V2P-CA15)
6 *
7 */
8
9/dts-v1/;
10
11/ {
12 model = "XENVM-4.2";
13 compatible = "xen,xenvm-4.2", "xen,xenvm";
14 interrupt-parent = <&gic>;
15 #address-cells = <2>;
16 #size-cells = <2>;
17
18 chosen {
19 /* this field is going to be adjusted by the hypervisor */
20 bootargs = "console=hvc0 root=/dev/xvda";
21 };
22
23 cpus {
24 #address-cells = <1>;
25 #size-cells = <0>;
26
27 cpu@0 {
28 device_type = "cpu";
29 compatible = "arm,cortex-a15";
30 reg = <0>;
31 };
32 };
33
34 memory@80000000 {
35 device_type = "memory";
36 /* this field is going to be adjusted by the hypervisor */
37 reg = <0 0x80000000 0 0x08000000>;
38 };
39
40 gic: interrupt-controller@2c001000 {
41 compatible = "arm,cortex-a15-gic", "arm,cortex-a9-gic";
42 #interrupt-cells = <3>;
43 #address-cells = <0>;
44 interrupt-controller;
45 reg = <0 0x2c001000 0 0x1000>,
46 <0 0x2c002000 0 0x100>;
47 };
48
49 timer {
50 compatible = "arm,armv7-timer";
51 interrupts = <1 13 0xf08>,
52 <1 14 0xf08>,
53 <1 11 0xf08>,
54 <1 10 0xf08>;
55 };
56
57 hypervisor {
58 compatible = "xen,xen-4.2", "xen,xen";
59 /* this field is going to be adjusted by the hypervisor */
60 reg = <0 0xb0000000 0 0x20000>;
61 /* this field is going to be adjusted by the hypervisor */
62 interrupts = <1 15 0xf08>;
63 };
64
65 motherboard {
66 arm,v2m-memory-map = "rs1";
67 };
68};
diff --git a/arch/arm/mach-vexpress/Makefile.boot b/arch/arm/mach-vexpress/Makefile.boot
index 318d308dfb93..38dbaac63349 100644
--- a/arch/arm/mach-vexpress/Makefile.boot
+++ b/arch/arm/mach-vexpress/Makefile.boot
@@ -7,4 +7,5 @@ initrd_phys-y := 0x60800000
7dtb-$(CONFIG_ARCH_VEXPRESS_DT) += vexpress-v2p-ca5s.dtb \ 7dtb-$(CONFIG_ARCH_VEXPRESS_DT) += vexpress-v2p-ca5s.dtb \
8 vexpress-v2p-ca9.dtb \ 8 vexpress-v2p-ca9.dtb \
9 vexpress-v2p-ca15-tc1.dtb \ 9 vexpress-v2p-ca15-tc1.dtb \
10 vexpress-v2p-ca15_a7.dtb 10 vexpress-v2p-ca15_a7.dtb \
11 xenvm-4.2.dtb
diff --git a/arch/arm/mach-vexpress/v2m.c b/arch/arm/mach-vexpress/v2m.c
index 37608f22ee31..0a79b085ceaf 100644
--- a/arch/arm/mach-vexpress/v2m.c
+++ b/arch/arm/mach-vexpress/v2m.c
@@ -658,6 +658,7 @@ static void __init v2m_dt_init(void)
658 658
659const static char *v2m_dt_match[] __initconst = { 659const static char *v2m_dt_match[] __initconst = {
660 "arm,vexpress", 660 "arm,vexpress",
661 "xen,xenvm",
661 NULL, 662 NULL,
662}; 663};
663 664