[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH 3/4] xen/arm: Add PSCI system_off and system_reset support

On 10/1/2014 9:46 AM, Ian Campbell wrote:
On Wed, 2014-10-01 at 09:15 -0500, Suravee Suthikulpanit wrote:

On 10/01/2014 05:26 AM, Ian Campbell wrote:
On Wed, 2014-10-01 at 11:07 +0100, Stefano Stabellini wrote:
diff --git a/xen/arch/arm/psci.c b/xen/arch/arm/psci.c
index b6360d5..b0d94a8 100644
--- a/xen/arch/arm/psci.c
+++ b/xen/arch/arm/psci.c
@@ -58,6 +58,16 @@ int call_psci_cpu_on(int cpu)
                                   cpu_logical_map(cpu), __pa(init_secondary), 

+void call_psci_system_off(void)
+    __invoke_psci_fn_smc(PSCI_0_2_FN_SYSTEM_OFF, 0, 0, 0);
+void call_psci_system_reset(void)
+    __invoke_psci_fn_smc(PSCI_0_2_FN_SYSTEM_RESET, 0, 0, 0);

This assumes PSCI 0.2 but actually the cpu_on function is still reading
the id from device tree.
Could you please change that too for uniformity?

Sure, I can add that.

There's actually quite a bit more required, detecting the DT compat
string for v0.2 and following the updated bindings for that case.

Having done that we need to use the 0.2 function ids for the existing
calls too. And these new calls need to check that 0.2 is present and
fail on 0.1.


So, it seems that minimally, we would need support for all PSCI-0.2
functions except MIGRATION. Also, once the system uses "arm,psci-0.2",
the power_off and reset code path should hook into the PSCI interface by
default.Does this sound right?


However, for Seattle, I would still need to provide the
"platform.[reset|poweroff] ops since it's not full PSCI-0.2 (yet).

OOI is it also PSCI-0.1 compatible?

Implementing the full PSCI 0.2 support is the thing I'm more worried
about wrt the release, since it is likely to be the large bit of new
work and it might not meet with Release Manager approval.


No, the only functions the firmware handles are just the system_off / system_reset (work in progress).

If you concern about changes to the PSCI subsystem, I could probably just making SMC call directly the platforms/seattle.c, until we have full PSCI-0.2 support ready in the arch/arm/psci.c


Xen-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.