public inbox for linux-arm-kernel@lists.infradead.org
 help / color / mirror / Atom feed
From: Mark Rutland <mark.rutland@arm.com>
To: Luca Fancellu <luca.fancellu@arm.com>
Cc: andre.przywara@arm.com, linux-arm-kernel@lists.infradead.org
Subject: Re: [boot-wrapper v4 4/4] aarch64: Start Xen on Armv8-R at EL2
Date: Tue, 26 Nov 2024 11:58:30 +0000	[thread overview]
Message-ID: <Z0W35oFzkdOaahsv@J2N7QTR9R3> (raw)
In-Reply-To: <20241017095520.939464-5-luca.fancellu@arm.com>

On Thu, Oct 17, 2024 at 10:55:20AM +0100, Luca Fancellu wrote:
> When bootwrapper is compiled with Xen support and it is started
> at EL2 on Armv8-R AArch64, keep the current EL and jump to the
> Xen image using the SPSR_KERNEL as spsr_el2 value.

What's the plan for booting Xen? i.e. is that using spin-table or PSCI?

I'm hesitant to expose PSCI booting to EL2 on ARMv8-R, because PSCI
doesn't really support ARMv8-R (the spec says nothing about it, and all
we're doing is providing the illusion of ARMv8-A to Linux), and Xen
would have to override the vectors anyway, so it doesn't really make
sense.

Given the latter part I'm assuming you only care about spin-table for
Xen, which is less concerning. I think we should make that more explicit
in the config options and forbid the combination of ARMv8-R + PSCI +
Xen.

Mark.

> 
> Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
> ---
> v4 changes:
>  - no changes
> ---
>  Makefile.am         | 1 +
>  arch/aarch64/boot.S | 2 +-
>  2 files changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/Makefile.am b/Makefile.am
> index aecda694fd6c..a8d5c1b96822 100644
> --- a/Makefile.am
> +++ b/Makefile.am
> @@ -127,6 +127,7 @@ XEN_CHOSEN	:= xen,xen-bootargs = \"$(XEN_CMDLINE)\";		\
>  			compatible = \"xen,linux-zimage\", \"xen,multiboot-module\"; \
>  			reg = <0x0 $(DOM0_OFFSET) 0x0 $(KERNEL_SIZE)>;	\
>  		   };
> +DEFINES		+= -DXEN
>  endif
>  
>  if INITRD
> diff --git a/arch/aarch64/boot.S b/arch/aarch64/boot.S
> index 565397823cb4..3fcc63bf2437 100644
> --- a/arch/aarch64/boot.S
> +++ b/arch/aarch64/boot.S
> @@ -100,7 +100,7 @@ ASM_FUNC(jump_kernel)
>  	mov	x1, x21
>  	mov	x2, x22
>  	mov	x3, x23
> -#if defined(BOOTWRAPPER_64R)
> +#if defined(BOOTWRAPPER_64R) && !defined(XEN)
>  	// On Armv8-R Linux needs to be booted at EL1
>  	mov	x4, #SPSR_KERNEL_EL1
>  #else
> -- 
> 2.34.1
> 


  reply	other threads:[~2024-11-26 11:59 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-10-17  9:55 [boot-wrapper v4 0/4] Add Armv8-R AArch64 support Luca Fancellu
2024-10-17  9:55 ` [boot-wrapper v4 1/4] Introduce --with-bw-arch for boot-wrapper compile arch Luca Fancellu
2024-10-17  9:55 ` [boot-wrapper v4 2/4] aarch64: Enable Armv8-R EL2 boot Luca Fancellu
2024-10-17  9:55 ` [boot-wrapper v4 3/4] aarch64: Implement PSCI for Armv8-R Luca Fancellu
2024-10-17  9:55 ` [boot-wrapper v4 4/4] aarch64: Start Xen on Armv8-R at EL2 Luca Fancellu
2024-11-26 11:58   ` Mark Rutland [this message]
2024-11-26 14:40     ` Luca Fancellu
2024-11-26 11:54 ` [boot-wrapper v4 0/4] Add Armv8-R AArch64 support Mark Rutland

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=Z0W35oFzkdOaahsv@J2N7QTR9R3 \
    --to=mark.rutland@arm.com \
    --cc=andre.przywara@arm.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=luca.fancellu@arm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox