On 2016-09-21 07:46, Jan Kiszka wrote:
> The root cell can't be using HVC dispatching as it can't be running a
> hypervisor prior to Jailhouse. And we can tell our non-root cells to use
> the SMC method for PSCI services.
> 
> Signed-off-by: Jan Kiszka <jan.kis...@siemens.com>
> ---
>  hypervisor/arch/arm/traps.c | 10 +++-------
>  1 file changed, 3 insertions(+), 7 deletions(-)
> 
> diff --git a/hypervisor/arch/arm/traps.c b/hypervisor/arch/arm/traps.c
> index ab5b3a0..4b2cd21 100644
> --- a/hypervisor/arch/arm/traps.c
> +++ b/hypervisor/arch/arm/traps.c
> @@ -264,14 +264,10 @@ static int arch_handle_hvc(struct trap_context *ctx)
>       unsigned long *regs = ctx->regs;
>       unsigned long code = regs[0];
>  
> -     if (IS_PSCI_32(code) || IS_PSCI_UBOOT(code)) {
> -             regs[0] = psci_dispatch(ctx);
> -     } else {
> -             regs[0] = hypercall(code, regs[1], regs[2]);
> +     regs[0] = hypercall(code, regs[1], regs[2]);
>  
> -             if (code == JAILHOUSE_HC_DISABLE && regs[0] == 0)
> -                     arch_shutdown_self(this_cpu_data());
> -     }
> +     if (code == JAILHOUSE_HC_DISABLE && regs[0] == 0)
> +             arch_shutdown_self(this_cpu_data());
>  
>       return TRAP_HANDLED;
>  }
> 

I just found this in the AArch64 patches:

"On AArch64 PSCI calls can be issued via SVC64 hypercalls as well,
contrary to AArch32 which uses SVC32 calls only."

What makes that arch different von 32-bit? In both cases, the root cell
only has a primitive hypervisor stub installed prior to enabling
Jailhouse, and that stub does not handle PSCI hypercalls.

Looking at linux/drivers/firmware/psci.c seems to confirm this: it's
shared by both archs.

Jan

-- 
Siemens AG, Corporate Technology, CT RDA ITP SES-DE
Corporate Competence Center Embedded Linux

-- 
You received this message because you are subscribed to the Google Groups 
"Jailhouse" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jailhouse-dev+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to