Re: [PATCH] tee: optee: Populate child nodes in probe function

From: Sudeep Holla
Date: Fri Nov 11 2022 - 11:13:46 EST


On Wed, Nov 09, 2022 at 05:07:08PM +0100, Ludvig Pärsson wrote:
> Currently there is no dependency between the "linaro,scmi-optee" driver
> and the tee_core. If the scmi-optee driver gets probed before the
> tee_bus_type is initialized, then we will get an unwanted error print.
>
> This patch enables putting scmi-optee nodes as children to the optee
> node in devicetree, which indirectly creates the missing dependency.
>
> Signed-off-by: Ludvig Pärsson <ludvig.parsson@xxxxxxxx>
> ---
> drivers/tee/optee/smc_abi.c | 5 +++++
> 1 file changed, 5 insertions(+)
>
> diff --git a/drivers/tee/optee/smc_abi.c b/drivers/tee/optee/smc_abi.c
> index a1c1fa1a9c28..be6f02fd5a7f 100644
> --- a/drivers/tee/optee/smc_abi.c
> +++ b/drivers/tee/optee/smc_abi.c
> @@ -1533,6 +1533,11 @@ static int optee_probe(struct platform_device *pdev)
> if (rc)
> goto err_disable_shm_cache;
>
> + /* Populate any dependent child node (if any) */
> + rc = devm_of_platform_populate(&pdev->dev);
> + if (rc)
> + goto err_disable_shm_cache;
> +

While I agree with idea of populating dependent child nodes from here,
I am not sure if it is OK to give error if that fails or to just continue
as there may be other users(like the user-space) for the OPTEE in general.

--
Regards,
Sudeep