Re: [PATCH] ARM: OMAP: Use ARM SMC Calling Convention when OP-TEE is available

Tony Lindgren
2019-12-16T22:41:10Z

* Andrew F. Davis <afd@ti.com> [191216 22:34]:
> On 12/16/19 4:04 PM, Tony Lindgren wrote:
> > * Andrew F. Davis <afd@ti.com> [191216 20:57]:
> >> Looks like the TI quirk idea is not moving forward, even the QCOM quirk
> >> looks like it may get kicked out. arm_smccc_smc() will remain only for
> >> SMCCC compliant calls, but it looks like a generic arm_smc() wouldn't be
> >> too opposed upstream.
> >
> > Yes so it seems.
> >
> >> Either way this patch would still be valid as when OP-TEE is present
> >> then arm_smccc_smc() will be the right call to make, how we handle the
> >> legacy calls can be sorted out later if a generic SMC call is implemented.
> >
> > Please see my comment regarding this patch earlier in this thread
> > pasted below for convenience:
> >
> > * Tony Lindgren <tony@atomide.com> [191119 16:22]:
> >> In any case, you should do the necessary checks for HAVE_ARM_SMCCC
> >> only once during init. I'm not sure how much checking for
> >> "/firmware/optee" helps here, sounds like we have a broken system
> >> if the firmware is not there while the arm_smccc_smc() should
> >> still work just fine :)
> >
> > So only check once during init. And during init, you should probably
> > also check that arm_smccc_smc() actually infd optee if
> > "/firmware/optee" is set, and only then set set the right function
> > pointer or some flag.
> >
>
> Okay, I'll check only once and make sure the node is "okay".

Yes we don't want to parse the dts over and over.

> I'll do the check during the first call to an SMC caller, I wouldn't
> want to pollute the OMAP generic init code for something that is only
> called on HS platforms, plus these SMC calls are rare (only 3 calls
> during boot of AM57x for instance) so performance is not critical, so I
> don't want to do anything fancy like code patching :), I'll just use a flag.

Please just add omap_early_initcall() to omap-secure.c while at it
to deal with this.

Regards,

Tony