
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@ti.com [ add binman and ddr dtsi files ] Signed-off-by: Neha Malcom Francis n-francis@ti.com Signed-off-by: Dasnavis Sabiya sabiya.d@ti.com Signed-off-by: Apurva Nandan a-nandan@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@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@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