1
0
mirror of https://xff.cz/git/u-boot/ synced 2026-01-26 20:35:22 +01:00

tee: optee: bind rng optee driver

In U-Boot, the discovery of TA based on its UUID on the TEE bus is
not supported.

This patch only binds the driver associated to the new supported
OP-TEE TA = TA_HWRNG when this driver is enable.

Signed-off-by: Patrick Delaunay <patrick.delaunay@foss.st.com>
This commit is contained in:
Patrick Delaunay
2022-03-29 14:21:24 +02:00
committed by Tom Rini
parent fd52e7f9c7
commit 70812bb83d

View File

@@ -7,6 +7,7 @@
#include <cpu_func.h>
#include <dm.h>
#include <dm/device_compat.h>
#include <dm/lists.h>
#include <log.h>
#include <malloc.h>
#include <tee.h>
@@ -641,6 +642,8 @@ static int optee_probe(struct udevice *dev)
{
struct optee_pdata *pdata = dev_get_plat(dev);
u32 sec_caps;
struct udevice *child;
int ret;
if (!is_optee_api(pdata->invoke_fn)) {
dev_err(dev, "OP-TEE api uid mismatch\n");
@@ -665,6 +668,16 @@ static int optee_probe(struct udevice *dev)
return -ENOENT;
}
/*
* in U-Boot, the discovery of TA on the TEE bus is not supported:
* only bind the drivers associated to the supported OP-TEE TA
*/
if (IS_ENABLED(CONFIG_RNG_OPTEE)) {
ret = device_bind_driver(dev, "optee-rng", "optee-rng", &child);
if (ret)
return ret;
}
return 0;
}