On Wed, Jul 10, 2024 at 12:23 AM Leo Yan <leo....@arm.com> wrote: > > As described in the document SMC Calling Convention (ARM DEN 0028 1.5 F), > section 7 "Arm Architecture Calls", the SMC call SMCCC_ARCH_FEATURES is > not expected to support the function ID ARM_SMCCC_TRNG_VERSION. Trusted > Firmware-A follows up the specification in its implementation. > > This commit removes the invocation to avoid the failure - which is a > wrong calling in U-boot. The later code invokes ARM_SMCCC_TRNG_VERSION > for retrieving the TRNG version, except it can read back the version > number, it also can be used to detect whether the TRNG is supported or > not.
LGTM. Reviewed-by: Weizhao Ouyang <o451686...@gmail.com> BR, Weizhao > > Signed-off-by: Leo Yan <leo....@arm.com> > --- > drivers/rng/smccc_trng.c | 4 ---- > 1 file changed, 4 deletions(-) > > diff --git a/drivers/rng/smccc_trng.c b/drivers/rng/smccc_trng.c > index f59b80666b..1da1affd8e 100644 > --- a/drivers/rng/smccc_trng.c > +++ b/drivers/rng/smccc_trng.c > @@ -135,10 +135,6 @@ static bool smccc_trng_is_supported(void > (*invoke_fn)(unsigned long a0, unsigned > { > struct arm_smccc_res res; > > - (*invoke_fn)(ARM_SMCCC_ARCH_FEATURES, ARM_SMCCC_TRNG_VERSION, 0, 0, > 0, 0, 0, 0, &res); > - if (res.a0 == ARM_SMCCC_RET_NOT_SUPPORTED) > - return false; > - > (*invoke_fn)(ARM_SMCCC_TRNG_VERSION, 0, 0, 0, 0, 0, 0, 0, &res); > if (res.a0 & BIT(31)) > return false; > -- > 2.34.1 >