[PATCH v10 11/15] arm: dts: Introduce j784s4 u-boot dts files
Marcel Ziswiler
marcel.ziswiler at toradex.com
Tue Feb 27 17:24:06 CET 2024
Hi Apurva
On Sat, 2024-02-24 at 01:51 +0530, Apurva Nandan wrote:
> Introduce the base dts files needed for u-boot or to augment the linux
> dtbs for use in the u-boot-spl and u-boot binaries.
>
> Signed-off-by: Hari Nagalla <hnagalla at ti.com>
> [ add binman and ddr dtsi files ]
> Signed-off-by: Neha Malcom Francis <n-francis at ti.com>
> Signed-off-by: Dasnavis Sabiya <sabiya.d at ti.com>
> Signed-off-by: Apurva Nandan <a-nandan at ti.com>
> ---
> arch/arm/dts/Makefile | 3 +
> arch/arm/dts/k3-j784s4-binman.dtsi | 345 +
> arch/arm/dts/k3-j784s4-ddr-evm-lp4-4266.dtsi | 8757 +++++++++++++++++
> arch/arm/dts/k3-j784s4-ddr.dtsi | 8858 ++++++++++++++++++
> arch/arm/dts/k3-j784s4-evm-u-boot.dtsi | 31 +
> arch/arm/dts/k3-j784s4-r5-evm.dts | 106 +
> board/ti/j784s4/MAINTAINERS | 4 +
> 7 files changed, 18104 insertions(+)
> create mode 100644 arch/arm/dts/k3-j784s4-binman.dtsi
> create mode 100644 arch/arm/dts/k3-j784s4-ddr-evm-lp4-4266.dtsi
> create mode 100644 arch/arm/dts/k3-j784s4-ddr.dtsi
> create mode 100644 arch/arm/dts/k3-j784s4-evm-u-boot.dtsi
> create mode 100644 arch/arm/dts/k3-j784s4-r5-evm.dts
>
> diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile
> index 7c2681eb937..e484112dd7c 100644
> --- a/arch/arm/dts/Makefile
> +++ b/arch/arm/dts/Makefile
> @@ -1412,6 +1412,9 @@ dtb-$(CONFIG_SOC_K3_J721S2) += k3-am68-sk-base-board.dtb\
> k3-am68-sk-r5-base-board.dtb\
> k3-j721s2-common-proc-board.dtb\
> k3-j721s2-r5-common-proc-board.dtb
> +
> +dtb-$(CONFIG_SOC_K3_J784S4) += k3-j784s4-r5-evm.dtb
> +
> dtb-$(CONFIG_SOC_K3_AM642) += k3-am642-evm.dtb \
> k3-am642-r5-evm.dtb \
> k3-am642-sk.dtb \
> diff --git a/arch/arm/dts/k3-j784s4-binman.dtsi b/arch/arm/dts/k3-j784s4-binman.dtsi
> new file mode 100644
> index 00000000000..e4dd6e14a66
> --- /dev/null
> +++ b/arch/arm/dts/k3-j784s4-binman.dtsi
> @@ -0,0 +1,345 @@
> +// SPDX-License-Identifier: GPL-2.0-only
> +/*
> + * Copyright (C) 2023 Texas Instruments Incorporated - https://www.ti.com/
> + */
> +
> +#include "k3-binman.dtsi"
> +
> +#ifdef CONFIG_TARGET_J784S4_R5_EVM
> +
> +&rcfg_yaml_tifs {
> + config = "tifs-rm-cfg.yaml";
> +};
> +
> +&binman {
> + tiboot3-j784s4-hs-evm.bin {
> + filename = "tiboot3-j784s4-hs-evm.bin";
> +
> + ti-secure-rom {
> + content = <&u_boot_spl>, <&ti_fs_enc>, <&combined_tifs_cfg>,
> + <&combined_dm_cfg>, <&sysfw_inner_cert>;
> + combined;
> + dm-data;
> + sysfw-inner-cert;
> + keyfile = "custMpk.pem";
> + sw-rev = <1>;
> + content-sbl = <&u_boot_spl>;
> + content-sysfw = <&ti_fs_enc>;
> + content-sysfw-data = <&combined_tifs_cfg>;
> + content-sysfw-inner-cert = <&sysfw_inner_cert>;
> + content-dm-data = <&combined_dm_cfg>;
> + load = <0x41c00000>;
> + load-sysfw = <0x40000>;
> + load-sysfw-data = <0x66800>;
> + load-dm-data = <0x41c80000>;
> + };
> +
> + u_boot_spl: u-boot-spl {
> + no-expanded;
> + };
> +
> + ti_fs_enc: ti-fs-enc.bin {
> + filename = "ti-sysfw/ti-fs-firmware-j784s4-hs-enc.bin";
> + type = "blob-ext";
> + optional;
> + };
> +
> + combined_tifs_cfg: combined-tifs-cfg.bin {
> + filename = "combined-tifs-cfg.bin";
> + type = "blob-ext";
> + };
> +
> + sysfw_inner_cert: sysfw-inner-cert {
> + filename = "ti-sysfw/ti-fs-firmware-j784s4-hs-cert.bin";
> + type = "blob-ext";
> + optional;
> + };
> +
> + combined_dm_cfg: combined-dm-cfg.bin {
> + filename = "combined-dm-cfg.bin";
> + type = "blob-ext";
> + };
> + };
> +};
> +
> +&binman {
> + tiboot3-j784s4-hs-fs-evm.bin {
> + filename = "tiboot3-j784s4-hs-fs-evm.bin";
> +
> + ti-secure-rom {
> + content = <&u_boot_spl_fs>, <&ti_fs_enc_fs>, <&combined_tifs_cfg_fs>,
> + <&combined_dm_cfg_fs>, <&sysfw_inner_cert_fs>;
> + combined;
> + dm-data;
> + sysfw-inner-cert;
> + keyfile = "custMpk.pem";
> + sw-rev = <1>;
> + content-sbl = <&u_boot_spl_fs>;
> + content-sysfw = <&ti_fs_enc_fs>;
> + content-sysfw-data = <&combined_tifs_cfg_fs>;
> + content-sysfw-inner-cert = <&sysfw_inner_cert_fs>;
> + content-dm-data = <&combined_dm_cfg_fs>;
> + load = <0x41c00000>;
> + load-sysfw = <0x40000>;
> + load-sysfw-data = <0x66800>;
> + load-dm-data = <0x41c80000>;
> + };
> +
> + u_boot_spl_fs: u-boot-spl {
> + no-expanded;
> + };
> +
> + ti_fs_enc_fs: ti-fs-enc.bin {
> + filename = "ti-sysfw/ti-fs-firmware-j784s4-hs-fs-enc.bin";
> + type = "blob-ext";
> + optional;
> + };
> +
> + combined_tifs_cfg_fs: combined-tifs-cfg.bin {
> + filename = "combined-tifs-cfg.bin";
> + type = "blob-ext";
> + };
> +
> + sysfw_inner_cert_fs: sysfw-inner-cert {
> + filename = "ti-sysfw/ti-fs-firmware-j784s4-hs-fs-cert.bin";
> + type = "blob-ext";
> + optional;
> + };
> +
> + combined_dm_cfg_fs: combined-dm-cfg.bin {
> + filename = "combined-dm-cfg.bin";
> + type = "blob-ext";
> + };
> + };
> +};
> +
> +&binman {
> + tiboot3-j784s4-gp-evm.bin {
> + filename = "tiboot3-j784s4-gp-evm.bin";
> + symlink = "tiboot3.bin";
> +
> + ti-secure-rom {
> + content = <&u_boot_spl_unsigned>, <&ti_fs_gp>,
> + <&combined_tifs_cfg_gp>, <&combined_dm_cfg_gp>;
> + combined;
> + dm-data;
> + content-sbl = <&u_boot_spl_unsigned>;
> + load = <0x41c00000>;
> + content-sysfw = <&ti_fs_gp>;
> + load-sysfw = <0x40000>;
> + content-sysfw-data = <&combined_tifs_cfg_gp>;
> + load-sysfw-data = < 0x66800>;
> + content-dm-data = <&combined_dm_cfg_gp>;
> + load-dm-data = <0x41c80000>;
> + sw-rev = <1>;
> + keyfile = "ti-degenerate-key.pem";
> + };
> +
> + u_boot_spl_unsigned: u-boot-spl {
> + no-expanded;
> + };
> +
> + ti_fs_gp: ti-fs-gp.bin {
> + filename = "ti-sysfw/ti-fs-firmware-j784s4-gp.bin";
> + type = "blob-ext";
> + optional;
> + };
> +
> + combined_tifs_cfg_gp: combined-tifs-cfg-gp.bin {
> + filename = "combined-tifs-cfg.bin";
> + type = "blob-ext";
> + };
> +
> + combined_dm_cfg_gp: combined-dm-cfg-gp.bin {
> + filename = "combined-dm-cfg.bin";
> + type = "blob-ext";
> + };
> +
> + };
> +};
> +#endif
> +
> +#ifdef CONFIG_TARGET_J784S4_A72_EVM
> +
> +#define SPL_J784S4_EVM_DTB "spl/dts/ti/k3-j784s4-evm.dtb"
Same device trees vendor folder here.
> +#define J784S4_EVM_DTB "u-boot.dtb"
> +
> +&binman {
> + ti-dm {
> + filename = "ti-dm.bin";
> +
> + blob-ext {
> + filename = "ti-dm/j784s4/ipc_echo_testb_mcu1_0_release_strip.xer5f";
> + };
> + };
> +
> + ti-spl {
> + insert-template = <&ti_spl_template>;
> +
> + fit {
> + images {
> + dm {
> + ti-secure {
> + content = <&dm>;
> + keyfile = "custMpk.pem";
> + };
> +
> + dm: blob-ext {
> + filename = "ti-dm.bin";
> + };
> + };
> +
> + fdt-0 {
> + description = "k3-j784s4-evm";
> + type = "flat_dt";
> + arch = "arm";
> + compression = "none";
> +
> + ti-secure {
> + content = <&spl_j784s4_evm_dtb>;
> + keyfile = "custMpk.pem";
> + };
> +
> + spl_j784s4_evm_dtb: blob-ext {
> + filename = SPL_J784S4_EVM_DTB;
> + };
> + };
> + };
> +
> + configurations {
> + default = "conf-0";
> +
> + conf-0 {
> + description = "k3-j784s4-evm";
> + firmware = "atf";
> + loadables = "tee", "dm", "spl";
> + fdt = "fdt-0";
> + };
> + };
> + };
> + };
> +};
> +
> +&binman {
> + u-boot {
> + insert-template = <&u_boot_template>;
> +
> + fit {
> + images {
> + uboot {
> + description = "U-Boot for J784S4 board";
> + };
> +
> + fdt-0 {
> + description = "k3-j784s4-evm";
> + type = "flat_dt";
> + arch = "arm";
> + compression = "none";
> +
> + ti-secure {
> + content = <&j784s4_evm_dtb>;
> + keyfile = "custMpk.pem";
> + };
> +
> + j784s4_evm_dtb: blob-ext {
> + filename = J784S4_EVM_DTB;
> + };
> +
> + hash {
> + algo = "crc32";
> + };
> + };
> + };
> +
> + configurations {
> + default = "conf-0";
> +
> + conf-0 {
> + description = "k3-j784s4-evm";
> + firmware = "uboot";
> + loadables = "uboot";
> + fdt = "fdt-0";
> + };
> + };
> + };
> + };
> +};
> +
> +&binman {
> + ti-spl_unsigned {
> + insert-template = <&ti_spl_unsigned_template>;
> +
> + fit {
> + images {
> + dm {
> + blob-ext {
> + filename = "ti-dm.bin";
> + };
> + };
> +
> + fdt-0 {
> + description = "k3-j784s4-evm";
> + type = "flat_dt";
> + arch = "arm";
> + compression = "none";
> +
> + spl_j784s4_evm_dtb_unsigned: blob {
> + filename = SPL_J784S4_EVM_DTB;
> + };
> + };
> + };
> +
> + configurations {
> + default = "conf-0";
> +
> + conf-0 {
> + description = "k3-j784s4-evm";
> + firmware = "atf";
> + loadables = "tee", "dm", "spl";
> + fdt = "fdt-0";
> + };
> + };
> + };
> + };
> +};
> +
> +&binman {
> + u-boot_unsigned {
> + insert-template = <&u_boot_unsigned_template>;
> +
> + fit {
> + images {
> + uboot {
> + description = "U-Boot for J784S4 board";
> + };
> +
> + fdt-0 {
> + description = "k3-j784s4-evm";
> + type = "flat_dt";
> + arch = "arm";
> + compression = "none";
> +
> + j784s4_evm_dtb_unsigned: blob {
> + filename = J784S4_EVM_DTB;
> + };
> +
> + hash {
> + algo = "crc32";
> + };
> + };
> + };
> +
> + configurations {
> + default = "conf-0";
> +
> + conf-0 {
> + description = "k3-j784s4-evm";
> + firmware = "uboot";
> + loadables = "uboot";
> + fdt = "fdt-0";
> + };
> + };
> + };
> + };
> +};
> +#endif
> diff --git a/arch/arm/dts/k3-j784s4-ddr-evm-lp4-4266.dtsi b/arch/arm/dts/k3-j784s4-ddr-evm-lp4-4266.dtsi
> new file mode 100644
> index 00000000000..0e16d2f201d
> --- /dev/null
> +++ b/arch/arm/dts/k3-j784s4-ddr-evm-lp4-4266.dtsi
> @@ -0,0 +1,8757 @@
> +// SPDX-License-Identifier: GPL-2.0-or-later
> +/*
> + * Copyright (C) 2023 Texas Instruments Incorporated - https://www.ti.com/
> + * This file was generated by the Jacinto7_DDRSS_RegConfigTool, Revision: 0.10.0
> + * This file was generated on 04/12/2023
> + */
[snip]
> diff --git a/arch/arm/dts/k3-j784s4-evm-u-boot.dtsi b/arch/arm/dts/k3-j784s4-evm-u-boot.dtsi
> new file mode 100644
> index 00000000000..ac749782bfc
> --- /dev/null
> +++ b/arch/arm/dts/k3-j784s4-evm-u-boot.dtsi
> @@ -0,0 +1,31 @@
> +// SPDX-License-Identifier: GPL-2.0-only
> +/*
> + * Copyright (C) 2023 Texas Instruments Incorporated - https://www.ti.com/
> + */
> +
> +#include "k3-j784s4-binman.dtsi"
> +
> +/ {
> + memory at 80000000 {
> + bootph-all;
> + };
> +};
> +
> +&mcu_udmap {
> + reg = <0x0 0x285c0000 0x0 0x100>,
> + <0x0 0x284c0000 0x0 0x4000>,
> + <0x0 0x2a800000 0x0 0x40000>,
> + <0x0 0x284a0000 0x0 0x4000>,
> + <0x0 0x2aa00000 0x0 0x40000>,
> + <0x0 0x28400000 0x0 0x2000>;
> + reg-names = "gcfg", "rchan", "rchanrt", "tchan",
> + "tchanrt", "rflow";
> + bootph-pre-ram;
> +};
> +
> +&sms {
> + k3_sysreset: sysreset-controller {
> + compatible = "ti,sci-sysreset";
> + bootph-pre-ram;
> + };
> +};
> diff --git a/arch/arm/dts/k3-j784s4-r5-evm.dts b/arch/arm/dts/k3-j784s4-r5-evm.dts
> new file mode 100644
> index 00000000000..bef4573d3d2
> --- /dev/null
> +++ b/arch/arm/dts/k3-j784s4-r5-evm.dts
> @@ -0,0 +1,106 @@
> +// SPDX-License-Identifier: GPL-2.0-only
> +/*
> + * Copyright (C) 2023 Texas Instruments Incorporated - https://www.ti.com/
> + */
> +
> +/dts-v1/;
> +
> +#include "k3-j784s4-evm.dts"
> +#include "k3-j784s4-ddr-evm-lp4-4266.dtsi"
> +#include "k3-j784s4-ddr.dtsi"
> +#include "k3-j784s4-evm-u-boot.dtsi"
> +
> +/ {
> + chosen {
> + tick-timer = &mcu_timer0;
> + };
> +
> + aliases {
> + remoteproc0 = &sysctrler;
> + remoteproc1 = &a72_0;
> + };
> +
> + a72_0: a72 at 0 {
> + compatible = "ti,am654-rproc";
> + reg = <0x0 0x00a90000 0x0 0x10>;
> + power-domains = <&k3_pds 61 TI_SCI_PD_EXCLUSIVE>,
> + <&k3_pds 202 TI_SCI_PD_EXCLUSIVE>;
> + resets = <&k3_reset 202 0>;
> + clocks = <&k3_clks 61 0>;
> + assigned-clocks = <&k3_clks 61 0>, <&k3_clks 202 0>;
> + assigned-clock-parents = <&k3_clks 61 2>;
> + assigned-clock-rates = <200000000>, <2000000000>;
> + ti,sci = <&sms>;
> + ti,sci-proc-id = <32>;
> + ti,sci-host-id = <10>;
> + bootph-pre-ram;
> + };
> +
> + dm_tifs: dm-tifs {
> + compatible = "ti,j721e-dm-sci";
> + ti,host-id = <3>;
> + ti,secure-host;
> + mbox-names = "rx", "tx";
> + mboxes= <&secure_proxy_mcu 21>, <&secure_proxy_mcu 23>;
> + bootph-pre-ram;
> + };
> +};
> +
> +&mcu_timer0 {
> + status = "okay";
> + clock-frequency = <250000000>;
> + bootph-pre-ram;
> +};
> +
> +&secure_proxy_sa3 {
> + status = "okay";
> + bootph-pre-ram;
> +};
> +
> +&secure_proxy_mcu {
> + status = "okay";
> + bootph-pre-ram;
> +};
> +
> +&cbass_mcu_wakeup {
> + sysctrler: sysctrler {
> + compatible = "ti,am654-system-controller";
> + mboxes= <&secure_proxy_mcu 4>,
> + <&secure_proxy_mcu 5>,
> + <&secure_proxy_sa3 5>;
> + mbox-names = "tx", "rx", "boot_notify";
> + bootph-pre-ram;
> + };
> +};
> +
> +&sms {
> + mboxes= <&secure_proxy_mcu 8>, <&secure_proxy_mcu 6>, <&secure_proxy_mcu 5>;
> + mbox-names = "tx", "rx", "notify";
> + ti,host-id = <4>;
> + ti,secure-host;
> + bootph-pre-ram;
> +};
> +
> +/* WKUP UART0 is used for DM firmware logs */
> +&wkup_uart0 {
> + bootph-pre-ram;
> + status = "okay";
> +};
> +
> +&ospi0 {
> + reg = <0x0 0x47040000 0x0 0x100>,
> + <0x0 0x50000000 0x0 0x8000000>;
> +};
> +
> +&ospi1 {
> + reg = <0x0 0x47050000 0x0 0x100>,
> + <0x0 0x58000000 0x0 0x8000000>;
> +};
> +
> +&mcu_ringacc {
> + ti,sci = <&dm_tifs>;
> +};
> +
> +&mcu_udmap {
> + ti,sci = <&dm_tifs>;
> +};
> diff --git a/board/ti/j784s4/MAINTAINERS b/board/ti/j784s4/MAINTAINERS
> index 037fedb9f7e..ff00cc60868 100644
> --- a/board/ti/j784s4/MAINTAINERS
> +++ b/board/ti/j784s4/MAINTAINERS
> @@ -4,3 +4,7 @@ S: Maintained
> F: board/ti/j784s4
> F: arch/arm/mach-k3/j784s4
> F: include/configs/j784s4_evm.h
> +F: arch/arm/dts/k3-j784s4-evm-u-boot.dtsi
> +F: arch/arm/dts/k3-j784s4-r5-evm.dts
> +F: arch/arm/dts/k3-j784s4-ddr.dtsi
> +F: arch/arm/dts/k3-j784s4-ddr-evm-lp4-4266.dtsi
Cheers
Marcel
More information about the U-Boot
mailing list