* [PATCH v3 0/3] mach-snapdragon: Enable OP-TEE support
@ 2026-01-27 6:23 Sumit Garg
2026-01-27 6:23 ` [PATCH v3 1/3] tee: optee: Export OP-TEE message UID check API Sumit Garg
` (3 more replies)
0 siblings, 4 replies; 11+ messages in thread
From: Sumit Garg @ 2026-01-27 6:23 UTC (permalink / raw)
To: u-boot-qcom, u-boot
Cc: trini, casey.connolly, neil.armstrong, jens.wiklander,
ilias.apalodimas, jorge.ramirez, varadarajan.narayanan, tonyh,
Sumit Garg
From: Sumit Garg <sumit.garg@oss.qualcomm.com>
Introduce TF-A and OP-TEE config fragment
Recently upstream TF-A/OP-TEE has started gaining support for Qcom
platforms. RB3Gen2 being the first one and more to come. U-Boot in
corresponding boot flow is packaged as a position independent executable.
So, lets add a generic U-Boot config fragment for Qcom platforms to
support TF-A/OP-TEE based TrustZone stack. Build command:
$ ./scripts/kconfig/merge_config.sh \
configs/qcom_defconfig \
board/qualcomm/tfa-optee.config
$ make -j`nproc` DEVICE_TREE=qcom/qcs6490-rb3gen2
---
Changes in v3:
- Incorporated misc. comments on patch #2.
Changes in v2:
- Add new patch #1 to export OP-TEE message UID check API
- Use OP-TEE message UID check API in order to perform the DT fixup for
OP-TEE.
- Switch from new defconfig to a config fragment instead.
Sumit Garg (3):
tee: optee: Export OP-TEE message UID check API
mach-snapdragon: of_fixup: Add OP-TEE DT fixup support
board/qualcomm: Introduce TF-A and OP-TEE config fragment
arch/arm/mach-snapdragon/of_fixup.c | 35 +++++++++++++++++++++++++++++
board/qualcomm/tfa-optee.config | 4 ++++
drivers/tee/optee/core.c | 5 +++++
include/tee/optee.h | 9 ++++++++
4 files changed, 53 insertions(+)
create mode 100644 board/qualcomm/tfa-optee.config
--
2.51.0
^ permalink raw reply [flat|nested] 11+ messages in thread
* [PATCH v3 1/3] tee: optee: Export OP-TEE message UID check API
2026-01-27 6:23 [PATCH v3 0/3] mach-snapdragon: Enable OP-TEE support Sumit Garg
@ 2026-01-27 6:23 ` Sumit Garg
2026-02-09 18:53 ` Casey Connolly
2026-01-27 6:23 ` [PATCH v3 2/3] mach-snapdragon: of_fixup: Add OP-TEE DT fixup support Sumit Garg
` (2 subsequent siblings)
3 siblings, 1 reply; 11+ messages in thread
From: Sumit Garg @ 2026-01-27 6:23 UTC (permalink / raw)
To: u-boot-qcom, u-boot
Cc: trini, casey.connolly, neil.armstrong, jens.wiklander,
ilias.apalodimas, jorge.ramirez, varadarajan.narayanan, tonyh,
Sumit Garg
From: Sumit Garg <sumit.garg@oss.qualcomm.com>
OP-TEE message UID check API can be useful to know whether OP-TEE
is enabled on not assuming the corresponding SMC call is properly
handled if OP-TEE is not supported.
This API can be used by platform code to know OP-TEE presence and
on that basis OP-TEE DT node can be added as part of DT fixups for
the OP-TEE driver probe to happen for both U-Boot and Linux.
Signed-off-by: Sumit Garg <sumit.garg@oss.qualcomm.com>
---
drivers/tee/optee/core.c | 5 +++++
include/tee/optee.h | 9 +++++++++
2 files changed, 14 insertions(+)
diff --git a/drivers/tee/optee/core.c b/drivers/tee/optee/core.c
index 5fc0505c788..4d67c948ec1 100644
--- a/drivers/tee/optee/core.c
+++ b/drivers/tee/optee/core.c
@@ -795,6 +795,11 @@ static optee_invoke_fn *get_invoke_func(struct udevice *dev)
return ERR_PTR(-EINVAL);
}
+bool is_optee_smc_api(void)
+{
+ return is_optee_api(optee_smccc_smc);
+}
+
static int optee_of_to_plat(struct udevice *dev)
{
struct optee_pdata *pdata = dev_get_plat(dev);
diff --git a/include/tee/optee.h b/include/tee/optee.h
index 77729450bb6..d1194493780 100644
--- a/include/tee/optee.h
+++ b/include/tee/optee.h
@@ -65,4 +65,13 @@ static inline int optee_copy_fdt_nodes(void *new_blob)
}
#endif
+#if defined(CONFIG_OPTEE)
+bool is_optee_smc_api(void);
+#else
+static inline bool is_optee_smc_api(void)
+{
+ return false;
+}
+#endif
+
#endif /* _OPTEE_H */
--
2.51.0
^ permalink raw reply related [flat|nested] 11+ messages in thread
* [PATCH v3 2/3] mach-snapdragon: of_fixup: Add OP-TEE DT fixup support
2026-01-27 6:23 [PATCH v3 0/3] mach-snapdragon: Enable OP-TEE support Sumit Garg
2026-01-27 6:23 ` [PATCH v3 1/3] tee: optee: Export OP-TEE message UID check API Sumit Garg
@ 2026-01-27 6:23 ` Sumit Garg
2026-02-09 18:49 ` Casey Connolly
2026-01-27 6:23 ` [PATCH v3 3/3] board/qualcomm: Introduce TF-A and OP-TEE config fragment Sumit Garg
2026-03-24 11:47 ` [PATCH v3 0/3] mach-snapdragon: Enable OP-TEE support Sumit Garg
3 siblings, 1 reply; 11+ messages in thread
From: Sumit Garg @ 2026-01-27 6:23 UTC (permalink / raw)
To: u-boot-qcom, u-boot
Cc: trini, casey.connolly, neil.armstrong, jens.wiklander,
ilias.apalodimas, jorge.ramirez, varadarajan.narayanan, tonyh,
Sumit Garg
From: Sumit Garg <sumit.garg@oss.qualcomm.com>
Add support for OP-TEE live tree DT fixup support which enables U-Boot
OP-TEE driver to be probed. As well as the EFI DT fixup protocol allows
the live tree fixup to be carried over to the OS for the OP-TEE driver
in the OS to probe as well.
Note that this fixup only gets applied if OP-TEE support is detected via
checking for OP-TEE message UID.
Signed-off-by: Sumit Garg <sumit.garg@oss.qualcomm.com>
---
arch/arm/mach-snapdragon/of_fixup.c | 35 +++++++++++++++++++++++++++++
1 file changed, 35 insertions(+)
diff --git a/arch/arm/mach-snapdragon/of_fixup.c b/arch/arm/mach-snapdragon/of_fixup.c
index 5b6076ea8e5..644afc22d88 100644
--- a/arch/arm/mach-snapdragon/of_fixup.c
+++ b/arch/arm/mach-snapdragon/of_fixup.c
@@ -25,6 +25,7 @@
#include <fdt_support.h>
#include <linux/errno.h>
#include <stdlib.h>
+#include <tee/optee.h>
#include <time.h>
/* U-Boot only supports USB high-speed mode on Qualcomm platforms with DWC3
@@ -164,6 +165,37 @@ static void fixup_power_domains(struct device_node *root)
}
}
+static void add_optee_node(struct device_node *root)
+{
+ struct device_node *fw = NULL, *optee = NULL;
+ int ret;
+
+ fw = of_find_node_by_path("/firmware");
+ if (!fw) {
+ log_err("Failed to find /firmware node\n");
+ return;
+ }
+
+ ret = of_add_subnode(fw, "optee", strlen("optee") + 1, &optee);
+ if (ret) {
+ log_err("Failed to add 'optee' subnode: %d\n", ret);
+ return;
+ }
+
+ ret = of_write_prop(optee, "compatible", strlen("linaro,optee-tz") + 1,
+ "linaro,optee-tz");
+ if (ret) {
+ log_err("Failed to add optee 'compatible' property: %d\n", ret);
+ return;
+ }
+
+ ret = of_write_prop(optee, "method", strlen("smc") + 1, "smc");
+ if (ret) {
+ log_err("Failed to add optee 'method' property: %d\n", ret);
+ return;
+ }
+}
+
#define time_call(func, ...) \
do { \
u64 start = timer_get_us(); \
@@ -178,6 +210,9 @@ static int qcom_of_fixup_nodes(void * __maybe_unused ctx, struct event *event)
time_call(fixup_usb_nodes, root);
time_call(fixup_power_domains, root);
+ if (IS_ENABLED(CONFIG_OPTEE) && is_optee_smc_api())
+ time_call(add_optee_node, root);
+
return 0;
}
--
2.51.0
^ permalink raw reply related [flat|nested] 11+ messages in thread
* [PATCH v3 3/3] board/qualcomm: Introduce TF-A and OP-TEE config fragment
2026-01-27 6:23 [PATCH v3 0/3] mach-snapdragon: Enable OP-TEE support Sumit Garg
2026-01-27 6:23 ` [PATCH v3 1/3] tee: optee: Export OP-TEE message UID check API Sumit Garg
2026-01-27 6:23 ` [PATCH v3 2/3] mach-snapdragon: of_fixup: Add OP-TEE DT fixup support Sumit Garg
@ 2026-01-27 6:23 ` Sumit Garg
2026-02-09 18:53 ` Casey Connolly
2026-03-24 11:47 ` [PATCH v3 0/3] mach-snapdragon: Enable OP-TEE support Sumit Garg
3 siblings, 1 reply; 11+ messages in thread
From: Sumit Garg @ 2026-01-27 6:23 UTC (permalink / raw)
To: u-boot-qcom, u-boot
Cc: trini, casey.connolly, neil.armstrong, jens.wiklander,
ilias.apalodimas, jorge.ramirez, varadarajan.narayanan, tonyh,
Sumit Garg
From: Sumit Garg <sumit.garg@oss.qualcomm.com>
Recently upstream TF-A/OP-TEE has started gaining support for Qcom
platforms. RB3Gen2 being the first one and more to come. U-Boot in
corresponding boot flow is packaged as a position independent executable.
So, lets add a generic U-Boot config fragment for Qcom platforms to
support TF-A/OP-TEE based TrustZone stack. Build command:
$ ./scripts/kconfig/merge_config.sh \
configs/qcom_defconfig \
board/qualcomm/tfa-optee.config
$ make -j`nproc` DEVICE_TREE=qcom/qcs6490-rb3gen2
For more information refer here:
https://trustedfirmware-a.readthedocs.io/en/latest/plat/qti/rb3gen2.html
Signed-off-by: Sumit Garg <sumit.garg@oss.qualcomm.com>
---
board/qualcomm/tfa-optee.config | 4 ++++
1 file changed, 4 insertions(+)
create mode 100644 board/qualcomm/tfa-optee.config
diff --git a/board/qualcomm/tfa-optee.config b/board/qualcomm/tfa-optee.config
new file mode 100644
index 00000000000..1e8364c114f
--- /dev/null
+++ b/board/qualcomm/tfa-optee.config
@@ -0,0 +1,4 @@
+# Enables support for TF-A based OP-TEE as the open
+# source TrustZone stack on Qcom platforms
+CONFIG_TEE=y
+CONFIG_OPTEE=y
--
2.51.0
^ permalink raw reply related [flat|nested] 11+ messages in thread
* Re: [PATCH v3 2/3] mach-snapdragon: of_fixup: Add OP-TEE DT fixup support
2026-01-27 6:23 ` [PATCH v3 2/3] mach-snapdragon: of_fixup: Add OP-TEE DT fixup support Sumit Garg
@ 2026-02-09 18:49 ` Casey Connolly
2026-02-10 5:20 ` Sumit Garg
0 siblings, 1 reply; 11+ messages in thread
From: Casey Connolly @ 2026-02-09 18:49 UTC (permalink / raw)
To: Sumit Garg, u-boot-qcom, u-boot
Cc: trini, neil.armstrong, jens.wiklander, ilias.apalodimas,
jorge.ramirez, varadarajan.narayanan, tonyh, Sumit Garg
Hi Sumit,
Thanks for respinning this.
On 27/01/2026 07:23, Sumit Garg wrote:
> From: Sumit Garg <sumit.garg@oss.qualcomm.com>
>
> Add support for OP-TEE live tree DT fixup support which enables U-Boot
> OP-TEE driver to be probed. As well as the EFI DT fixup protocol allows
> the live tree fixup to be carried over to the OS for the OP-TEE driver
> in the OS to probe as well.
The EFI DT fixup protocol hook seems to be missing here?
>
> Note that this fixup only gets applied if OP-TEE support is detected via
> checking for OP-TEE message UID.
>
> Signed-off-by: Sumit Garg <sumit.garg@oss.qualcomm.com>
> ---
> arch/arm/mach-snapdragon/of_fixup.c | 35 +++++++++++++++++++++++++++++
> 1 file changed, 35 insertions(+)
>
> diff --git a/arch/arm/mach-snapdragon/of_fixup.c b/arch/arm/mach-snapdragon/of_fixup.c
> index 5b6076ea8e5..644afc22d88 100644
> --- a/arch/arm/mach-snapdragon/of_fixup.c
> +++ b/arch/arm/mach-snapdragon/of_fixup.c
> @@ -25,6 +25,7 @@
> #include <fdt_support.h>
> #include <linux/errno.h>
> #include <stdlib.h>
> +#include <tee/optee.h>
> #include <time.h>
>
> /* U-Boot only supports USB high-speed mode on Qualcomm platforms with DWC3
> @@ -164,6 +165,37 @@ static void fixup_power_domains(struct device_node *root)
> }
> }
>
> +static void add_optee_node(struct device_node *root)
> +{
> + struct device_node *fw = NULL, *optee = NULL;
> + int ret;
> +
> + fw = of_find_node_by_path("/firmware");
> + if (!fw) {
> + log_err("Failed to find /firmware node\n");
> + return;
> + }
> +
> + ret = of_add_subnode(fw, "optee", strlen("optee") + 1, &optee);
> + if (ret) {
> + log_err("Failed to add 'optee' subnode: %d\n", ret);
> + return;
> + }
> +
> + ret = of_write_prop(optee, "compatible", strlen("linaro,optee-tz") + 1,
> + "linaro,optee-tz");
> + if (ret) {
> + log_err("Failed to add optee 'compatible' property: %d\n", ret);
> + return;
> + }
> +
> + ret = of_write_prop(optee, "method", strlen("smc") + 1, "smc");
> + if (ret) {
> + log_err("Failed to add optee 'method' property: %d\n", ret);
> + return;
> + }
> +}
> +
> #define time_call(func, ...) \
> do { \
> u64 start = timer_get_us(); \
> @@ -178,6 +210,9 @@ static int qcom_of_fixup_nodes(void * __maybe_unused ctx, struct event *event)
> time_call(fixup_usb_nodes, root);
> time_call(fixup_power_domains, root);
>
> + if (IS_ENABLED(CONFIG_OPTEE) && is_optee_smc_api())
> + time_call(add_optee_node, root);
> +
> return 0;
> }
>
--
// Casey (she/her)
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH v3 1/3] tee: optee: Export OP-TEE message UID check API
2026-01-27 6:23 ` [PATCH v3 1/3] tee: optee: Export OP-TEE message UID check API Sumit Garg
@ 2026-02-09 18:53 ` Casey Connolly
0 siblings, 0 replies; 11+ messages in thread
From: Casey Connolly @ 2026-02-09 18:53 UTC (permalink / raw)
To: Sumit Garg, u-boot-qcom, u-boot
Cc: trini, neil.armstrong, jens.wiklander, ilias.apalodimas,
jorge.ramirez, varadarajan.narayanan, tonyh, Sumit Garg
On 27/01/2026 07:23, Sumit Garg wrote:
> From: Sumit Garg <sumit.garg@oss.qualcomm.com>
>
> OP-TEE message UID check API can be useful to know whether OP-TEE
> is enabled on not assuming the corresponding SMC call is properly
> handled if OP-TEE is not supported.
>
> This API can be used by platform code to know OP-TEE presence and
> on that basis OP-TEE DT node can be added as part of DT fixups for
> the OP-TEE driver probe to happen for both U-Boot and Linux.
>
> Signed-off-by: Sumit Garg <sumit.garg@oss.qualcomm.com>
Reviewed-by: Casey Connolly <casey.connolly@linaro.org>
> ---
> drivers/tee/optee/core.c | 5 +++++
> include/tee/optee.h | 9 +++++++++
> 2 files changed, 14 insertions(+)
>
> diff --git a/drivers/tee/optee/core.c b/drivers/tee/optee/core.c
> index 5fc0505c788..4d67c948ec1 100644
> --- a/drivers/tee/optee/core.c
> +++ b/drivers/tee/optee/core.c
> @@ -795,6 +795,11 @@ static optee_invoke_fn *get_invoke_func(struct udevice *dev)
> return ERR_PTR(-EINVAL);
> }
>
> +bool is_optee_smc_api(void)
> +{
> + return is_optee_api(optee_smccc_smc);
> +}
> +
> static int optee_of_to_plat(struct udevice *dev)
> {
> struct optee_pdata *pdata = dev_get_plat(dev);
> diff --git a/include/tee/optee.h b/include/tee/optee.h
> index 77729450bb6..d1194493780 100644
> --- a/include/tee/optee.h
> +++ b/include/tee/optee.h
> @@ -65,4 +65,13 @@ static inline int optee_copy_fdt_nodes(void *new_blob)
> }
> #endif
>
> +#if defined(CONFIG_OPTEE)
> +bool is_optee_smc_api(void);
> +#else
> +static inline bool is_optee_smc_api(void)
> +{
> + return false;
> +}
> +#endif
> +
> #endif /* _OPTEE_H */
--
// Casey (she/her)
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH v3 3/3] board/qualcomm: Introduce TF-A and OP-TEE config fragment
2026-01-27 6:23 ` [PATCH v3 3/3] board/qualcomm: Introduce TF-A and OP-TEE config fragment Sumit Garg
@ 2026-02-09 18:53 ` Casey Connolly
0 siblings, 0 replies; 11+ messages in thread
From: Casey Connolly @ 2026-02-09 18:53 UTC (permalink / raw)
To: Sumit Garg, u-boot-qcom, u-boot
Cc: trini, neil.armstrong, jens.wiklander, ilias.apalodimas,
jorge.ramirez, varadarajan.narayanan, tonyh, Sumit Garg
On 27/01/2026 07:23, Sumit Garg wrote:
> From: Sumit Garg <sumit.garg@oss.qualcomm.com>
>
> Recently upstream TF-A/OP-TEE has started gaining support for Qcom
> platforms. RB3Gen2 being the first one and more to come. U-Boot in
> corresponding boot flow is packaged as a position independent executable.
>
> So, lets add a generic U-Boot config fragment for Qcom platforms to
> support TF-A/OP-TEE based TrustZone stack. Build command:
>
> $ ./scripts/kconfig/merge_config.sh \
> configs/qcom_defconfig \
> board/qualcomm/tfa-optee.config
> $ make -j`nproc` DEVICE_TREE=qcom/qcs6490-rb3gen2
>
> For more information refer here:
> https://trustedfirmware-a.readthedocs.io/en/latest/plat/qti/rb3gen2.html
>
> Signed-off-by: Sumit Garg <sumit.garg@oss.qualcomm.com>
Reviewed-by: Casey Connolly <casey.connolly@linaro.org>
> ---
> board/qualcomm/tfa-optee.config | 4 ++++
> 1 file changed, 4 insertions(+)
> create mode 100644 board/qualcomm/tfa-optee.config
>
> diff --git a/board/qualcomm/tfa-optee.config b/board/qualcomm/tfa-optee.config
> new file mode 100644
> index 00000000000..1e8364c114f
> --- /dev/null
> +++ b/board/qualcomm/tfa-optee.config
> @@ -0,0 +1,4 @@
> +# Enables support for TF-A based OP-TEE as the open
> +# source TrustZone stack on Qcom platforms
> +CONFIG_TEE=y
> +CONFIG_OPTEE=y
--
// Casey (she/her)
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH v3 2/3] mach-snapdragon: of_fixup: Add OP-TEE DT fixup support
2026-02-09 18:49 ` Casey Connolly
@ 2026-02-10 5:20 ` Sumit Garg
0 siblings, 0 replies; 11+ messages in thread
From: Sumit Garg @ 2026-02-10 5:20 UTC (permalink / raw)
To: Casey Connolly
Cc: u-boot-qcom, u-boot, trini, neil.armstrong, jens.wiklander,
ilias.apalodimas, jorge.ramirez, varadarajan.narayanan, tonyh,
Sumit Garg
Hi Casey,
On Mon, Feb 09, 2026 at 07:49:50PM +0100, Casey Connolly wrote:
> Hi Sumit,
>
> Thanks for respinning this.
>
> On 27/01/2026 07:23, Sumit Garg wrote:
> > From: Sumit Garg <sumit.garg@oss.qualcomm.com>
> >
> > Add support for OP-TEE live tree DT fixup support which enables U-Boot
> > OP-TEE driver to be probed. As well as the EFI DT fixup protocol allows
> > the live tree fixup to be carried over to the OS for the OP-TEE driver
> > in the OS to probe as well.
>
> The EFI DT fixup protocol hook seems to be missing here?
The EFI DT fixup for OP-TEE node is already taken care of by the common
OP-TEE library as part of this code path:
efi_dt_fixup() ->
image_setup_libfdt() ->
optee_copy_fdt_nodes()
-Sumit
> >
> > Note that this fixup only gets applied if OP-TEE support is detected via
> > checking for OP-TEE message UID.
> >
> > Signed-off-by: Sumit Garg <sumit.garg@oss.qualcomm.com>
> > ---
> > arch/arm/mach-snapdragon/of_fixup.c | 35 +++++++++++++++++++++++++++++
> > 1 file changed, 35 insertions(+)
> >
> > diff --git a/arch/arm/mach-snapdragon/of_fixup.c b/arch/arm/mach-snapdragon/of_fixup.c
> > index 5b6076ea8e5..644afc22d88 100644
> > --- a/arch/arm/mach-snapdragon/of_fixup.c
> > +++ b/arch/arm/mach-snapdragon/of_fixup.c
> > @@ -25,6 +25,7 @@
> > #include <fdt_support.h>
> > #include <linux/errno.h>
> > #include <stdlib.h>
> > +#include <tee/optee.h>
> > #include <time.h>
> >
> > /* U-Boot only supports USB high-speed mode on Qualcomm platforms with DWC3
> > @@ -164,6 +165,37 @@ static void fixup_power_domains(struct device_node *root)
> > }
> > }
> >
> > +static void add_optee_node(struct device_node *root)
> > +{
> > + struct device_node *fw = NULL, *optee = NULL;
> > + int ret;
> > +
> > + fw = of_find_node_by_path("/firmware");
> > + if (!fw) {
> > + log_err("Failed to find /firmware node\n");
> > + return;
> > + }
> > +
> > + ret = of_add_subnode(fw, "optee", strlen("optee") + 1, &optee);
> > + if (ret) {
> > + log_err("Failed to add 'optee' subnode: %d\n", ret);
> > + return;
> > + }
> > +
> > + ret = of_write_prop(optee, "compatible", strlen("linaro,optee-tz") + 1,
> > + "linaro,optee-tz");
> > + if (ret) {
> > + log_err("Failed to add optee 'compatible' property: %d\n", ret);
> > + return;
> > + }
> > +
> > + ret = of_write_prop(optee, "method", strlen("smc") + 1, "smc");
> > + if (ret) {
> > + log_err("Failed to add optee 'method' property: %d\n", ret);
> > + return;
> > + }
> > +}
> > +
> > #define time_call(func, ...) \
> > do { \
> > u64 start = timer_get_us(); \
> > @@ -178,6 +210,9 @@ static int qcom_of_fixup_nodes(void * __maybe_unused ctx, struct event *event)
> > time_call(fixup_usb_nodes, root);
> > time_call(fixup_power_domains, root);
> >
> > + if (IS_ENABLED(CONFIG_OPTEE) && is_optee_smc_api())
> > + time_call(add_optee_node, root);
> > +
> > return 0;
> > }
> >
>
> --
> // Casey (she/her)
>
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH v3 0/3] mach-snapdragon: Enable OP-TEE support
2026-01-27 6:23 [PATCH v3 0/3] mach-snapdragon: Enable OP-TEE support Sumit Garg
` (2 preceding siblings ...)
2026-01-27 6:23 ` [PATCH v3 3/3] board/qualcomm: Introduce TF-A and OP-TEE config fragment Sumit Garg
@ 2026-03-24 11:47 ` Sumit Garg
2026-03-24 11:50 ` Casey Connolly
3 siblings, 1 reply; 11+ messages in thread
From: Sumit Garg @ 2026-03-24 11:47 UTC (permalink / raw)
To: u-boot-qcom, u-boot
Cc: trini, casey.connolly, neil.armstrong, jens.wiklander,
ilias.apalodimas, jorge.ramirez, varadarajan.narayanan, tonyh,
Sumit Garg
Hey Casey,
On Tue, Jan 27, 2026 at 11:53:38AM +0530, Sumit Garg wrote:
> From: Sumit Garg <sumit.garg@oss.qualcomm.com>
>
> Introduce TF-A and OP-TEE config fragment
>
> Recently upstream TF-A/OP-TEE has started gaining support for Qcom
> platforms. RB3Gen2 being the first one and more to come. U-Boot in
> corresponding boot flow is packaged as a position independent executable.
>
> So, lets add a generic U-Boot config fragment for Qcom platforms to
> support TF-A/OP-TEE based TrustZone stack. Build command:
>
> $ ./scripts/kconfig/merge_config.sh \
> configs/qcom_defconfig \
> board/qualcomm/tfa-optee.config
> $ make -j`nproc` DEVICE_TREE=qcom/qcs6490-rb3gen2
>
> ---
> Changes in v3:
> - Incorporated misc. comments on patch #2.
>
Can we get this patch-set applied as well? Have been waiting on the list
for approx. 2 months.
-Sumit
> Changes in v2:
> - Add new patch #1 to export OP-TEE message UID check API
> - Use OP-TEE message UID check API in order to perform the DT fixup for
> OP-TEE.
> - Switch from new defconfig to a config fragment instead.
>
> Sumit Garg (3):
> tee: optee: Export OP-TEE message UID check API
> mach-snapdragon: of_fixup: Add OP-TEE DT fixup support
> board/qualcomm: Introduce TF-A and OP-TEE config fragment
>
> arch/arm/mach-snapdragon/of_fixup.c | 35 +++++++++++++++++++++++++++++
> board/qualcomm/tfa-optee.config | 4 ++++
> drivers/tee/optee/core.c | 5 +++++
> include/tee/optee.h | 9 ++++++++
> 4 files changed, 53 insertions(+)
> create mode 100644 board/qualcomm/tfa-optee.config
>
> --
> 2.51.0
>
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH v3 0/3] mach-snapdragon: Enable OP-TEE support
2026-03-24 11:47 ` [PATCH v3 0/3] mach-snapdragon: Enable OP-TEE support Sumit Garg
@ 2026-03-24 11:50 ` Casey Connolly
2026-04-06 12:40 ` Sumit Garg
0 siblings, 1 reply; 11+ messages in thread
From: Casey Connolly @ 2026-03-24 11:50 UTC (permalink / raw)
To: Sumit Garg, u-boot-qcom, u-boot
Cc: trini, neil.armstrong, jens.wiklander, ilias.apalodimas,
jorge.ramirez, varadarajan.narayanan, tonyh, Sumit Garg
Hi Sumit,
On 24/03/2026 12:47, Sumit Garg wrote:
> Hey Casey,
>
> On Tue, Jan 27, 2026 at 11:53:38AM +0530, Sumit Garg wrote:
>> From: Sumit Garg <sumit.garg@oss.qualcomm.com>
>>
>> Introduce TF-A and OP-TEE config fragment
>>
>> Recently upstream TF-A/OP-TEE has started gaining support for Qcom
>> platforms. RB3Gen2 being the first one and more to come. U-Boot in
>> corresponding boot flow is packaged as a position independent executable.
>>
>> So, lets add a generic U-Boot config fragment for Qcom platforms to
>> support TF-A/OP-TEE based TrustZone stack. Build command:
>>
>> $ ./scripts/kconfig/merge_config.sh \
>> configs/qcom_defconfig \
>> board/qualcomm/tfa-optee.config
>> $ make -j`nproc` DEVICE_TREE=qcom/qcs6490-rb3gen2
>>
>> ---
>> Changes in v3:
>> - Incorporated misc. comments on patch #2.
>>
>
> Can we get this patch-set applied as well? Have been waiting on the list
> for approx. 2 months.
Yeah, I'll get this into -next soon, apologies for the wait.
Kind regards,
>
> -Sumit
>
>> Changes in v2:
>> - Add new patch #1 to export OP-TEE message UID check API
>> - Use OP-TEE message UID check API in order to perform the DT fixup for
>> OP-TEE.
>> - Switch from new defconfig to a config fragment instead.
>>
>> Sumit Garg (3):
>> tee: optee: Export OP-TEE message UID check API
>> mach-snapdragon: of_fixup: Add OP-TEE DT fixup support
>> board/qualcomm: Introduce TF-A and OP-TEE config fragment
>>
>> arch/arm/mach-snapdragon/of_fixup.c | 35 +++++++++++++++++++++++++++++
>> board/qualcomm/tfa-optee.config | 4 ++++
>> drivers/tee/optee/core.c | 5 +++++
>> include/tee/optee.h | 9 ++++++++
>> 4 files changed, 53 insertions(+)
>> create mode 100644 board/qualcomm/tfa-optee.config
>>
>> --
>> 2.51.0
>>
--
// Casey (she/her)
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH v3 0/3] mach-snapdragon: Enable OP-TEE support
2026-03-24 11:50 ` Casey Connolly
@ 2026-04-06 12:40 ` Sumit Garg
0 siblings, 0 replies; 11+ messages in thread
From: Sumit Garg @ 2026-04-06 12:40 UTC (permalink / raw)
To: Casey Connolly
Cc: u-boot-qcom, u-boot, trini, neil.armstrong, jens.wiklander,
ilias.apalodimas, jorge.ramirez, varadarajan.narayanan, tonyh,
Sumit Garg
On Tue, Mar 24, 2026 at 12:50:00PM +0100, Casey Connolly wrote:
> Hi Sumit,
>
> On 24/03/2026 12:47, Sumit Garg wrote:
> > Hey Casey,
> >
> > On Tue, Jan 27, 2026 at 11:53:38AM +0530, Sumit Garg wrote:
> >> From: Sumit Garg <sumit.garg@oss.qualcomm.com>
> >>
> >> Introduce TF-A and OP-TEE config fragment
> >>
> >> Recently upstream TF-A/OP-TEE has started gaining support for Qcom
> >> platforms. RB3Gen2 being the first one and more to come. U-Boot in
> >> corresponding boot flow is packaged as a position independent executable.
> >>
> >> So, lets add a generic U-Boot config fragment for Qcom platforms to
> >> support TF-A/OP-TEE based TrustZone stack. Build command:
> >>
> >> $ ./scripts/kconfig/merge_config.sh \
> >> configs/qcom_defconfig \
> >> board/qualcomm/tfa-optee.config
> >> $ make -j`nproc` DEVICE_TREE=qcom/qcs6490-rb3gen2
> >>
> >> ---
> >> Changes in v3:
> >> - Incorporated misc. comments on patch #2.
> >>
> >
> > Can we get this patch-set applied as well? Have been waiting on the list
> > for approx. 2 months.
>
> Yeah, I'll get this into -next soon, apologies for the wait.
>
Still haven't seen any of your PR for this cycle. I see a lot of patches
reviewed but not applied on patchworks here [1].
[1] https://patchwork.ozlabs.org/project/uboot/list/?series=&submitter=&state=&q=&archive=&delegate=151538
-Sumit
^ permalink raw reply [flat|nested] 11+ messages in thread
end of thread, other threads:[~2026-04-06 12:40 UTC | newest]
Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-01-27 6:23 [PATCH v3 0/3] mach-snapdragon: Enable OP-TEE support Sumit Garg
2026-01-27 6:23 ` [PATCH v3 1/3] tee: optee: Export OP-TEE message UID check API Sumit Garg
2026-02-09 18:53 ` Casey Connolly
2026-01-27 6:23 ` [PATCH v3 2/3] mach-snapdragon: of_fixup: Add OP-TEE DT fixup support Sumit Garg
2026-02-09 18:49 ` Casey Connolly
2026-02-10 5:20 ` Sumit Garg
2026-01-27 6:23 ` [PATCH v3 3/3] board/qualcomm: Introduce TF-A and OP-TEE config fragment Sumit Garg
2026-02-09 18:53 ` Casey Connolly
2026-03-24 11:47 ` [PATCH v3 0/3] mach-snapdragon: Enable OP-TEE support Sumit Garg
2026-03-24 11:50 ` Casey Connolly
2026-04-06 12:40 ` Sumit Garg
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox