[PATCH RFC 1/6] arm: dts: imx8m: add fit optee node

Tim Harvey tharvey at gateworks.com
Thu Oct 24 17:32:53 CEST 2024


On Thu, Oct 24, 2024 at 12:04 AM Yannic Moog <y.moog at phytec.de> wrote:
>
> Add tee node in SoC u-boot device trees. Each board adds their specific
> load and entry addresses for the op-tee image in the respective
> board-u-boot.dtsi file.
>
> Signed-off-by: Yannic Moog <y.moog at phytec.de>
> ---
>  arch/arm/dts/imx8mm-u-boot.dtsi | 15 ++++++++++++++-
>  arch/arm/dts/imx8mn-u-boot.dtsi | 15 ++++++++++++++-
>  arch/arm/dts/imx8mp-u-boot.dtsi | 15 ++++++++++++++-
>  3 files changed, 42 insertions(+), 3 deletions(-)
>
> diff --git a/arch/arm/dts/imx8mm-u-boot.dtsi b/arch/arm/dts/imx8mm-u-boot.dtsi
> index d31bc822532..e7a6800b771 100644
> --- a/arch/arm/dts/imx8mm-u-boot.dtsi
> +++ b/arch/arm/dts/imx8mm-u-boot.dtsi
> @@ -164,6 +164,19 @@
>                                         };
>  #endif
>
> +                                       tee: tee {
> +                                               description = "OP-TEE";
> +                                               type = "tee";
> +                                               arch = "arm64";
> +                                               compression = "none";
> +                                               os = "tee";
> +
> +                                               tee-os {
> +                                                       filename = "tee.bin";
> +                                                       optional;
> +                                               };
> +                                       };
> +
>                                         binman_fip: fip {
>                                                 arch = "arm64";
>                                                 compression = "none";
> @@ -192,7 +205,7 @@
>                                                 fdt = "fdt-SEQ";
>                                                 firmware = "uboot";
>  #ifndef CONFIG_ARMV8_PSCI
> -                                               loadables = "atf";
> +                                               loadables = "atf", "tee";
>  #endif
>                                         };
>                                 };
> diff --git a/arch/arm/dts/imx8mn-u-boot.dtsi b/arch/arm/dts/imx8mn-u-boot.dtsi
> index 6875c6d44ff..bcb88f0a507 100644
> --- a/arch/arm/dts/imx8mn-u-boot.dtsi
> +++ b/arch/arm/dts/imx8mn-u-boot.dtsi
> @@ -235,6 +235,19 @@
>                                         };
>  #endif
>
> +                                       tee: tee {
> +                                               description = "OP-TEE";
> +                                               type = "tee";
> +                                               arch = "arm64";
> +                                               compression = "none";
> +                                               os = "tee";
> +
> +                                               tee-os {
> +                                                       filename = "tee.bin";
> +                                                       optional;
> +                                               };
> +                                       };
> +
>                                         binman_fip: fip {
>                                                 arch = "arm64";
>                                                 compression = "none";
> @@ -263,7 +276,7 @@
>                                                 fdt = "fdt-SEQ";
>                                                 firmware = "uboot";
>  #ifndef CONFIG_ARMV8_PSCI
> -                                               loadables = "atf";
> +                                               loadables = "atf", "tee";
>  #endif
>                                         };
>                                 };
> diff --git a/arch/arm/dts/imx8mp-u-boot.dtsi b/arch/arm/dts/imx8mp-u-boot.dtsi
> index 56749ccacd2..7a9c616fb1a 100644
> --- a/arch/arm/dts/imx8mp-u-boot.dtsi
> +++ b/arch/arm/dts/imx8mp-u-boot.dtsi
> @@ -185,6 +185,19 @@
>                                         };
>  #endif
>
> +                                       tee: tee {
> +                                               description = "OP-TEE";
> +                                               type = "tee";
> +                                               arch = "arm64";
> +                                               compression = "none";
> +                                               os = "tee";
> +
> +                                               tee-os {
> +                                                       filename = "tee.bin";
> +                                                       optional;
> +                                               };
> +                                       };
> +
>                                         @fdt-SEQ {
>                                                 description = "NAME";
>                                                 type = "flat_dt";
> @@ -204,7 +217,7 @@
>                                                 fdt = "fdt-SEQ";
>                                                 firmware = "uboot";
>  #ifndef CONFIG_ARMV8_PSCI
> -                                               loadables = "atf";
> +                                               loadables = "atf", "tee";
>  #endif
>                                         };
>                                 };
>
> --
> 2.43.0
>

Hi Yannic,

I've attempted something like this in the past [1] but I added the
load address and made it a Kconfig. It never made it in due to
something happening in CI that I never had a chance to get back to.

What happens with the binman step if you don't have an overlay that
specifies load/entry?

Best Regards,

Tim
[1] https://patchwork.ozlabs.org/project/uboot/patch/20230622173006.3921891-1-tharvey@gateworks.com/


More information about the U-Boot mailing list