On Wed, 20 Aug 2025 15:14:41 +0100,
Mark Brown <[email protected]> wrote:
> 
> The initial EL2 setup for GCS did not include disabling of EL1 usage of
> GCS instructions, also disable these traps.  This is the first disabling
> of instruction traps, use x2 to store the value to be written.

Written where?

> 
> Signed-off-by: Mark Brown <[email protected]>
> ---
>  arch/arm64/include/asm/el2_setup.h | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/arch/arm64/include/asm/el2_setup.h 
> b/arch/arm64/include/asm/el2_setup.h
> index 46033027510c..0ac14ea4dbc8 100644
> --- a/arch/arm64/include/asm/el2_setup.h
> +++ b/arch/arm64/include/asm/el2_setup.h
> @@ -355,6 +355,10 @@
>  
>  .Lskip_gce_fgt_\@:
>  
> +     orr     x2, x2, #HFGITR_EL2_nGCSEPP_MASK

What is x2 set to before this?

> +     orr     x2, x2, #HFGITR_EL2_nGCSSTR_EL1_MASK
> +     orr     x2, x2, #HFGITR_EL2_nGCSPUSHM_EL1_MASK
> +
>  .Lset_fgt_\@:
>       msr_s   SYS_HFGRTR_EL2, x0
>       msr_s   SYS_HFGWTR_EL2, x0

Followed by:

        msr_s   SYS_HFGITR_EL2, xzr

Puzzled.

        M.

-- 
Jazz isn't dead. It just smells funny.

Reply via email to