Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d75e2f90 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull ARM Xen SMP updates from Stefano Stabellini:
 "This contains a bunch of Xen/ARM specific changes, including some
  fixes, SMP support for Xen on ARM, and moving the xenvm machine from
  mach-vexpress to mach-virt.

  The non-Xen files that are touched are arch/arm/Kconfig, to select
  ARM_PSCI on XEN, and arch/arm/boot/dts/Makefile, to build the xenvm
  DTB if CONFIG_ARCH_VIRT.

  Highlights:

   - Move xenvm to mach-virt.

   - Implement SMP support in Xen on ARM.

   - Add support for machine reboot and power off via Xen hypercalls"

* tag '3.9-rc3-smp-6-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/sstabellini/xen:
  xen/arm: remove duplicated include from enlighten.c
  xen/arm: use sched_op hypercalls for machine reboot and power off
  xenvm: add a simple PSCI node and a second cpu
  xen/arm: XEN selects ARM_PSCI
  xen: move the xenvm machine to mach-virt
  xen/arm: SMP support
  xen/arm: implement HYPERVISOR_vcpu_op
  xen/arm: actually pass a non-NULL percpu pointer to request_percpu_irq
parents de9c9f86 9bc25a1d
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -1794,6 +1794,7 @@ config XEN
	depends on ARM && AEABI && OF
	depends on CPU_V7 && !CPU_V6
	depends on !GENERIC_ATOMIC64
	select ARM_PSCI
	help
	  Say Y if you want to run Linux in a Virtual Machine on Xen on ARM.

+2 −2
Original line number Diff line number Diff line
@@ -200,8 +200,8 @@ dtb-$(CONFIG_ARCH_VERSATILE) += versatile-ab.dtb \
dtb-$(CONFIG_ARCH_VEXPRESS) += vexpress-v2p-ca5s.dtb \
	vexpress-v2p-ca9.dtb \
	vexpress-v2p-ca15-tc1.dtb \
	vexpress-v2p-ca15_a7.dtb \
	xenvm-4.2.dtb
	vexpress-v2p-ca15_a7.dtb
dtb-$(CONFIG_ARCH_VIRT) += xenvm-4.2.dtb
dtb-$(CONFIG_ARCH_VT8500) += vt8500-bv07.dtb \
	wm8505-ref.dtb \
	wm8650-mid.dtb \
+13 −0
Original line number Diff line number Diff line
@@ -29,6 +29,19 @@
			compatible = "arm,cortex-a15";
			reg = <0>;
		};

		cpu@1 {
			device_type = "cpu";
			compatible = "arm,cortex-a15";
			reg = <1>;
		};
	};

	psci {
		compatible      = "arm,psci";
		method          = "hvc";
		cpu_off         = <1>;
		cpu_on          = <2>;
	};

	memory@80000000 {
+1 −0
Original line number Diff line number Diff line
@@ -46,6 +46,7 @@ int HYPERVISOR_event_channel_op(int cmd, void *arg);
unsigned long HYPERVISOR_hvm_op(int op, void *arg);
int HYPERVISOR_memory_op(unsigned int cmd, void *arg);
int HYPERVISOR_physdev_op(int cmd, void *arg);
int HYPERVISOR_vcpu_op(int cmd, int vcpuid, void *extra_args);

static inline void
MULTI_update_va_mapping(struct multicall_entry *mcl, unsigned long va,
+0 −1
Original line number Diff line number Diff line
@@ -450,7 +450,6 @@ static void __init v2m_dt_init(void)

static const char * const v2m_dt_match[] __initconst = {
	"arm,vexpress",
	"xen,xenvm",
	NULL,
};

Loading