On Thursday, June 18, 2026 10:46 AM, Michael Kelley wrote: > From: Kameron Carr <[email protected]> Sent: Tuesday, June > 9, 2026 11:10 AM > > diff --git a/drivers/firmware/smccc/smccc.c > b/drivers/firmware/smccc/smccc.c > > index bdee057db2fd3..6b465e65472b0 100644 > > --- a/drivers/firmware/smccc/smccc.c > > +++ b/drivers/firmware/smccc/smccc.c > > @@ -12,6 +12,12 @@ > > #include <linux/platform_device.h> > > #include <asm/archrandom.h> > > > > +#ifdef CONFIG_ARM64 > > +#include <linux/cleanup.h> > > +#include <linux/spinlock.h> > > +#include <asm/rsi.h> > > +#endif > > + > > static u32 smccc_version = ARM_SMCCC_VERSION_1_0; > > static enum arm_smccc_conduit smccc_conduit = SMCCC_CONDUIT_NONE; > > > > @@ -67,12 +73,45 @@ s32 arm_smccc_get_soc_id_revision(void) > > } > > EXPORT_SYMBOL_GPL(arm_smccc_get_soc_id_revision); > > > > +#ifdef CONFIG_ARM64 > > +static struct rsi_host_call uuid_hc; > > +static DEFINE_SPINLOCK(uuid_hc_lock); > > So evidently Sashiko is wrong in saying that struct rsi_host_call must be > in decrypted memory?
Yes, Sashiko is wrong. The RMM spec clearly states that the rsi_host_call struct must be encrypted / "protected". The other two requirements are 256 aligned and not RIPAS_EMPTY.

