* [PATCH v3 01/11] firmware: scmi: switch to dev_ofnode during bind
2026-08-04 0:09 [PATCH v3 00/11] arm: mach-k3: introduce basic support for the AM62L Bryan Brattlof
@ 2026-08-04 0:09 ` Bryan Brattlof
2026-08-04 0:09 ` [PATCH v3 02/11] tools: binman: extend ti_secure_rom to handle op-tee Bryan Brattlof
` (9 subsequent siblings)
10 siblings, 0 replies; 21+ messages in thread
From: Bryan Brattlof @ 2026-08-04 0:09 UTC (permalink / raw)
To: u-boot
Cc: Peng Fan, Tom Rini, Dan Carpenter, Anshul Dalal, Simon Glass,
Alper Nebi Yasak, Bryan Brattlof, Ilias Apalodimas, Aristo Chen,
Udit Kumar, Andrew Davis, Daniel Golle, Johan Jonker,
Vignesh Raghavendra, Paresh Bhagat, Swamil Jain,
Neha Malcom Francis, Shiva Tripathi, Apurva Nandan,
Chintan Vankar, Francesco Dolcini, Marek Vasut,
Siddharth Vadapalli, Hrushikesh Salunke, Manorit Chawdhry
From: Anshul Dalal <anshuld@ti.com>
When using ofnode_null() the node offset passed to the FDT API will be
-1 which is invalid and breaks probe. Switch to dev_ofnode()
Tested-by: Anshul Dalal <anshuld@ti.com>
Signed-off-by: Anshul Dalal <anshuld@ti.com>
Signed-off-by: Bryan Brattlof <bb@ti.com>
---
drivers/firmware/scmi/scmi_agent-uclass.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/firmware/scmi/scmi_agent-uclass.c b/drivers/firmware/scmi/scmi_agent-uclass.c
index cd458a7f4588..65c1ddad2b57 100644
--- a/drivers/firmware/scmi/scmi_agent-uclass.c
+++ b/drivers/firmware/scmi/scmi_agent-uclass.c
@@ -437,7 +437,7 @@ static int scmi_bind_protocols(struct udevice *dev)
/* initialize the device from device tree */
drv = DM_DRIVER_GET(scmi_base_drv);
name = "scmi-base.0";
- ret = device_bind(dev, drv, name, NULL, ofnode_null(), &proto);
+ ret = device_bind(dev, drv, name, NULL, dev_ofnode(dev), &proto);
if (ret) {
dev_err(dev, "failed to bind base protocol\n");
return ret;
--
2.54.0
^ permalink raw reply related [flat|nested] 21+ messages in thread* [PATCH v3 02/11] tools: binman: extend ti_secure_rom to handle op-tee
2026-08-04 0:09 [PATCH v3 00/11] arm: mach-k3: introduce basic support for the AM62L Bryan Brattlof
2026-08-04 0:09 ` [PATCH v3 01/11] firmware: scmi: switch to dev_ofnode during bind Bryan Brattlof
@ 2026-08-04 0:09 ` Bryan Brattlof
2026-08-04 0:09 ` [PATCH v3 03/11] soc: add data to identify the am62lx Bryan Brattlof
` (8 subsequent siblings)
10 siblings, 0 replies; 21+ messages in thread
From: Bryan Brattlof @ 2026-08-04 0:09 UTC (permalink / raw)
To: u-boot
Cc: Peng Fan, Tom Rini, Dan Carpenter, Anshul Dalal, Simon Glass,
Alper Nebi Yasak, Bryan Brattlof, Ilias Apalodimas, Aristo Chen,
Udit Kumar, Andrew Davis, Daniel Golle, Johan Jonker,
Vignesh Raghavendra, Paresh Bhagat, Swamil Jain,
Neha Malcom Francis, Shiva Tripathi, Apurva Nandan,
Chintan Vankar, Francesco Dolcini, Marek Vasut,
Siddharth Vadapalli, Hrushikesh Salunke, Manorit Chawdhry
Add an optional 'tee' entry to the x509 certificate template to include
optee during the second (tispl) boot phase for the AM62L.
Tested-by: Anshul Dalal <anshuld@ti.com>
Signed-off-by: Bryan Brattlof <bb@ti.com>
---
Changes in v3:
- Extended documentation and testing for ti-secure-rom etype
- Link to v2: https://lore.kernel.org/r/20260721-am62lx-v2-0-33ff580c267d@ti.com
---
tools/binman/btool/openssl.py | 11 ++++---
tools/binman/etype/ti_secure_rom.py | 34 +++++++++++++++++++++-
tools/binman/etype/x509_cert.py | 4 +++
.../binman/test/vendor/ti_secure_rom_combined.dts | 1 +
4 files changed, 45 insertions(+), 5 deletions(-)
diff --git a/tools/binman/btool/openssl.py b/tools/binman/btool/openssl.py
index b26f087c4470..c4762f6ccee6 100644
--- a/tools/binman/btool/openssl.py
+++ b/tools/binman/btool/openssl.py
@@ -239,10 +239,10 @@ emailAddress = {req_dist_name_dict['emailAddress']}
def x509_cert_rom_combined(self, cert_fname, input_fname, key_fname, sw_rev,
config_fname, req_dist_name_dict, load_addr, sha, total_size, num_comps,
sysfw_inner_cert_ext_boot_sequence_string, dm_data_ext_boot_sequence_string,
- imagesize_sbl, hashval_sbl, load_addr_sysfw, imagesize_sysfw,
- hashval_sysfw, load_addr_sysfw_data, imagesize_sysfw_data,
- hashval_sysfw_data, sysfw_inner_cert_ext_boot_block,
- dm_data_ext_boot_block, bootcore_opts, debug):
+ tee_ext_boot_sequence_string, imagesize_sbl, hashval_sbl, load_addr_sysfw,
+ imagesize_sysfw, hashval_sysfw, load_addr_sysfw_data, imagesize_sysfw_data,
+ hashval_sysfw_data, sysfw_inner_cert_ext_boot_block, dm_data_ext_boot_block,
+ tee_ext_boot_block, bootcore_opts, debug):
"""Create a certificate
Args:
@@ -299,6 +299,7 @@ sbl=SEQUENCE:sbl
sysfw=SEQUENCE:sysfw
sysfw_data=SEQUENCE:sysfw_data
{sysfw_inner_cert_ext_boot_sequence_string}
+{tee_ext_boot_sequence_string}
{dm_data_ext_boot_sequence_string}
[sbl]
@@ -340,6 +341,8 @@ coreDbgSecEn = INTEGER:0
{sysfw_inner_cert_ext_boot_block}
+{tee_ext_boot_block}
+
{dm_data_ext_boot_block}
''', file=outf)
args = ['req', '-new', '-x509', '-key', key_fname, '-nodes',
diff --git a/tools/binman/etype/ti_secure_rom.py b/tools/binman/etype/ti_secure_rom.py
index 7e90c6559409..0d7d3e602a9a 100644
--- a/tools/binman/etype/ti_secure_rom.py
+++ b/tools/binman/etype/ti_secure_rom.py
@@ -42,10 +42,12 @@ class Entry_ti_secure_rom(Entry_x509_cert):
- content-sysfw-data: phandle of sysfw-data or tifs-data binary
- content-sysfw-inner-cert (optional): phandle of sysfw inner certificate binary
- content-dm-data (optional): phandle of dm-data binary
+ - content-tee (optional): phandle of the tee binary
- load-sysfw: load address of sysfw binary
- load-sysfw-data: load address of sysfw-data or tifs-data binary
- load-sysfw-inner-cert (optional): load address of sysfw inner certificate binary
- load-dm-data (optional): load address of dm-data binary
+ - load-tee (optional): load address of the tee binary
Output files:
- input.<unique_name> - input file passed to openssl
@@ -80,6 +82,11 @@ class Entry_ti_secure_rom(Entry_x509_cert):
self.dm_data = fdt_util.GetBool(self._node, 'dm-data', False)
if self.dm_data:
self.load_addr_dm_data = fdt_util.GetInt(self._node, 'load-dm-data', 0x00000000)
+
+ self.tee = fdt_util.GetBool(self._node, 'content-tee', False)
+ if self.tee:
+ self.load_addr_tee = fdt_util.GetInt(self._node, 'load-tee', 0x00000000)
+
self.req_dist_name = {'C': 'US',
'ST': 'TX',
'L': 'Dallas',
@@ -219,7 +226,32 @@ compSize = INTEGER:{imagesize_dm_data}
shaType = OID:{self.sha_type}
shaValue = FORMAT:HEX,OCT:{hashval_dm_data}"""
- self.total_size = self.imagesize_sbl + self.imagesize_sysfw + self.imagesize_sysfw_data + imagesize_sysfw_inner_cert + imagesize_dm_data
+ # tee
+ self.tee_ext_boot_sequence_string = ""
+ self.tee_ext_boot_block = ""
+ imagesize_tee = 0
+ if self.tee:
+ self.content = fdt_util.GetPhandleList(self._node, 'content-tee')
+ input_data_tee = self.GetContents(required)
+
+ input_fname_tee = tools.get_output_filename('input.%s' % uniq)
+ tools.write_file(input_fname_tee, input_data_tee)
+
+ indata_tee = tools.read_file(input_fname_tee)
+ hashval_tee = hashlib.sha512(indata_tee).hexdigest()
+ imagesize_tee = len(indata_tee)
+ self.num_comps += 1
+ self.tee_ext_boot_sequence_string = "tee=SEQUENCE:tee"
+ self.tee_ext_boot_block = f"""[tee]
+compType = INTEGER:17
+bootCore = INTEGER:16
+compOpts = INTEGER:0
+destAddr = FORMAT:HEX,OCT:{self.load_addr_tee:08x}
+compSize = INTEGER:{imagesize_tee}
+shaType = OID:{self.sha_type}
+shaValue = FORMAT:HEX,OCT:{hashval_tee}"""
+
+ self.total_size = self.imagesize_sbl + self.imagesize_sysfw + self.imagesize_sysfw_data + imagesize_sysfw_inner_cert + imagesize_dm_data + imagesize_tee
return super().GetCertificate(required=required, type='rom-combined')
def GetCertificate(self, required):
diff --git a/tools/binman/etype/x509_cert.py b/tools/binman/etype/x509_cert.py
index b6e8b0b4fb09..79b7b37baee7 100644
--- a/tools/binman/etype/x509_cert.py
+++ b/tools/binman/etype/x509_cert.py
@@ -41,6 +41,7 @@ class Entry_x509_cert(Entry_collection):
self.num_comps = None
self.sysfw_inner_cert_ext_boot_sequence_string = None
self.dm_data_ext_boot_sequence_string = None
+ self.tee_ext_boot_sequence_string = None
self.imagesize_sbl = None
self.hashval_sbl = None
self.load_addr_sysfw = None
@@ -51,6 +52,7 @@ class Entry_x509_cert(Entry_collection):
self.hashval_sysfw_data = None
self.sysfw_inner_cert_ext_boot_block = None
self.dm_data_ext_boot_block = None
+ self.tee_ext_boot_block = None
self.firewall_cert_data = None
self.debug = False
@@ -132,6 +134,7 @@ class Entry_x509_cert(Entry_collection):
num_comps=self.num_comps,
sysfw_inner_cert_ext_boot_sequence_string=self.sysfw_inner_cert_ext_boot_sequence_string,
dm_data_ext_boot_sequence_string=self.dm_data_ext_boot_sequence_string,
+ tee_ext_boot_sequence_string=self.tee_ext_boot_sequence_string,
imagesize_sbl=self.imagesize_sbl,
hashval_sbl=self.hashval_sbl,
load_addr_sysfw=self.load_addr_sysfw,
@@ -142,6 +145,7 @@ class Entry_x509_cert(Entry_collection):
hashval_sysfw_data=self.hashval_sysfw_data,
sysfw_inner_cert_ext_boot_block=self.sysfw_inner_cert_ext_boot_block,
dm_data_ext_boot_block=self.dm_data_ext_boot_block,
+ tee_ext_boot_block=self.tee_ext_boot_block,
bootcore_opts=self.bootcore_opts,
debug=self.debug
)
diff --git a/tools/binman/test/vendor/ti_secure_rom_combined.dts b/tools/binman/test/vendor/ti_secure_rom_combined.dts
index bf872739bc13..ea246599c6c6 100644
--- a/tools/binman/test/vendor/ti_secure_rom_combined.dts
+++ b/tools/binman/test/vendor/ti_secure_rom_combined.dts
@@ -14,6 +14,7 @@
content-sysfw-data = <&unsecure_binary>;
content-sysfw-inner-cert = <&unsecure_binary>;
content-dm-data = <&unsecure_binary>;
+ content-tee = <&unsecure_binary>;
combined;
sysfw-inner-cert;
dm-data;
--
2.54.0
^ permalink raw reply related [flat|nested] 21+ messages in thread* [PATCH v3 03/11] soc: add data to identify the am62lx
2026-08-04 0:09 [PATCH v3 00/11] arm: mach-k3: introduce basic support for the AM62L Bryan Brattlof
2026-08-04 0:09 ` [PATCH v3 01/11] firmware: scmi: switch to dev_ofnode during bind Bryan Brattlof
2026-08-04 0:09 ` [PATCH v3 02/11] tools: binman: extend ti_secure_rom to handle op-tee Bryan Brattlof
@ 2026-08-04 0:09 ` Bryan Brattlof
2026-08-04 0:09 ` [PATCH v3 04/11] boot/Kconfig: disable fit post processing for AM62L Bryan Brattlof
` (7 subsequent siblings)
10 siblings, 0 replies; 21+ messages in thread
From: Bryan Brattlof @ 2026-08-04 0:09 UTC (permalink / raw)
To: u-boot
Cc: Peng Fan, Tom Rini, Dan Carpenter, Anshul Dalal, Simon Glass,
Alper Nebi Yasak, Bryan Brattlof, Ilias Apalodimas, Aristo Chen,
Udit Kumar, Andrew Davis, Daniel Golle, Johan Jonker,
Vignesh Raghavendra, Paresh Bhagat, Swamil Jain,
Neha Malcom Francis, Shiva Tripathi, Apurva Nandan,
Chintan Vankar, Francesco Dolcini, Marek Vasut,
Siddharth Vadapalli, Hrushikesh Salunke, Manorit Chawdhry
Include the part number for TI's am62lx family of SoCs so we can
properly identify it during boot.
Tested-by: Anshul Dalal <anshuld@ti.com>
Acked-by: Andrew Davis <afd@ti.com>
Reviewed-by: Anshul Dalal <anshuld@ti.com>
Signed-off-by: Bryan Brattlof <bb@ti.com>
---
Changes in v3:
- Capitalized 'Include' in commit message
- Link to v2: https://lore.kernel.org/r/20260721-am62lx-v2-0-33ff580c267d@ti.com
---
arch/arm/mach-k3/include/mach/hardware.h | 2 ++
drivers/soc/soc_ti_k3.c | 11 +++++++++++
2 files changed, 13 insertions(+)
diff --git a/arch/arm/mach-k3/include/mach/hardware.h b/arch/arm/mach-k3/include/mach/hardware.h
index 2c771a1195f5..6b86f6ed12e6 100644
--- a/arch/arm/mach-k3/include/mach/hardware.h
+++ b/arch/arm/mach-k3/include/mach/hardware.h
@@ -56,6 +56,7 @@
#define JTAG_ID_PARTNO_SHIFT 12
#define JTAG_ID_PARTNO_MASK (0xffff << 12)
#define JTAG_ID_PARTNO_AM62AX 0xbb8d
+#define JTAG_ID_PARTNO_AM62LX 0xbba7
#define JTAG_ID_PARTNO_AM62PX 0xbb9d
#define JTAG_ID_PARTNO_AM62X 0xbb7e
#define JTAG_ID_PARTNO_AM64X 0xbb38
@@ -81,6 +82,7 @@ static inline bool soc_is_##id(void) \
}
K3_SOC_ID(am62x, AM62X)
K3_SOC_ID(am62ax, AM62AX)
+K3_SOC_ID(am62lx, AM62LX)
K3_SOC_ID(am62px, AM62PX)
K3_SOC_ID(am64x, AM64X)
K3_SOC_ID(am65x, AM65X)
diff --git a/drivers/soc/soc_ti_k3.c b/drivers/soc/soc_ti_k3.c
index b34cbd08e073..6ffd88f22c09 100644
--- a/drivers/soc/soc_ti_k3.c
+++ b/drivers/soc/soc_ti_k3.c
@@ -36,6 +36,9 @@ static const char *get_family_string(u32 idreg)
case JTAG_ID_PARTNO_AM62PX:
family = "AM62PX";
break;
+ case JTAG_ID_PARTNO_AM62LX:
+ family = "AM62LX";
+ break;
case JTAG_ID_PARTNO_AM64X:
family = "AM64X";
break;
@@ -72,6 +75,10 @@ static const char *get_family_string(u32 idreg)
return family;
}
+static char *am62lx_rev_string_map[] = {
+ "1.0", "1.1",
+};
+
static char *j721e_rev_string_map[] = {
"1.0", "1.1", "2.0",
};
@@ -89,6 +96,10 @@ static const char *get_rev_string(u32 idreg)
soc = (idreg & JTAG_ID_PARTNO_MASK) >> JTAG_ID_PARTNO_SHIFT;
switch (soc) {
+ case JTAG_ID_PARTNO_AM62LX:
+ if (rev >= ARRAY_SIZE(am62lx_rev_string_map))
+ goto bail;
+ return am62lx_rev_string_map[rev];
case JTAG_ID_PARTNO_J721E:
if (rev >= ARRAY_SIZE(j721e_rev_string_map))
goto bail;
--
2.54.0
^ permalink raw reply related [flat|nested] 21+ messages in thread* [PATCH v3 04/11] boot/Kconfig: disable fit post processing for AM62L
2026-08-04 0:09 [PATCH v3 00/11] arm: mach-k3: introduce basic support for the AM62L Bryan Brattlof
` (2 preceding siblings ...)
2026-08-04 0:09 ` [PATCH v3 03/11] soc: add data to identify the am62lx Bryan Brattlof
@ 2026-08-04 0:09 ` Bryan Brattlof
2026-08-04 0:09 ` [PATCH v3 05/11] arm: mach-k3: Add initial am62lx SoC support Bryan Brattlof
` (6 subsequent siblings)
10 siblings, 0 replies; 21+ messages in thread
From: Bryan Brattlof @ 2026-08-04 0:09 UTC (permalink / raw)
To: u-boot
Cc: Peng Fan, Tom Rini, Dan Carpenter, Anshul Dalal, Simon Glass,
Alper Nebi Yasak, Bryan Brattlof, Ilias Apalodimas, Aristo Chen,
Udit Kumar, Andrew Davis, Daniel Golle, Johan Jonker,
Vignesh Raghavendra, Paresh Bhagat, Swamil Jain,
Neha Malcom Francis, Shiva Tripathi, Apurva Nandan,
Chintan Vankar, Francesco Dolcini, Marek Vasut,
Siddharth Vadapalli, Hrushikesh Salunke, Manorit Chawdhry
The AM62L family of SoCs utilize a 2 stage ROM boot which uses x509
certificates for booting securely. There is no need for processing of a
fitImage. Disable it for the AM62L SoC family.
Tested-by: Anshul Dalal <anshuld@ti.com>
Reviewed-by: Anshul Dalal <anshuld@ti.com>
Signed-off-by: Bryan Brattlof <bb@ti.com>
---
boot/Kconfig | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/boot/Kconfig b/boot/Kconfig
index c67dc0ba4932..b942be6ceb3b 100644
--- a/boot/Kconfig
+++ b/boot/Kconfig
@@ -335,7 +335,7 @@ config SPL_LOAD_FIT_FULL
config SPL_FIT_IMAGE_POST_PROCESS
bool "Enable post-processing of FIT artifacts after loading by the SPL"
depends on SPL_LOAD_FIT
- default y if TI_SECURE_DEVICE
+ default y if (TI_SECURE_DEVICE && !SOC_K3_AM62L3)
help
Allows doing any sort of manipulation to blobs after they got extracted
from the U-Boot FIT image like stripping off headers or modifying the
--
2.54.0
^ permalink raw reply related [flat|nested] 21+ messages in thread* [PATCH v3 05/11] arm: mach-k3: Add initial am62lx SoC support
2026-08-04 0:09 [PATCH v3 00/11] arm: mach-k3: introduce basic support for the AM62L Bryan Brattlof
` (3 preceding siblings ...)
2026-08-04 0:09 ` [PATCH v3 04/11] boot/Kconfig: disable fit post processing for AM62L Bryan Brattlof
@ 2026-08-04 0:09 ` Bryan Brattlof
2026-08-04 11:12 ` Anshul Dalal
2026-08-04 0:09 ` [PATCH v3 06/11] board: ti: am62lx: add initial board files Bryan Brattlof
` (5 subsequent siblings)
10 siblings, 1 reply; 21+ messages in thread
From: Bryan Brattlof @ 2026-08-04 0:09 UTC (permalink / raw)
To: u-boot
Cc: Peng Fan, Tom Rini, Dan Carpenter, Anshul Dalal, Simon Glass,
Alper Nebi Yasak, Bryan Brattlof, Ilias Apalodimas, Aristo Chen,
Udit Kumar, Andrew Davis, Daniel Golle, Johan Jonker,
Vignesh Raghavendra, Paresh Bhagat, Swamil Jain,
Neha Malcom Francis, Shiva Tripathi, Apurva Nandan,
Chintan Vankar, Francesco Dolcini, Marek Vasut,
Siddharth Vadapalli, Hrushikesh Salunke, Manorit Chawdhry
Add initial mach-k3 files needed to support boards based on the AM62L
family of SoCs
Tested-by: Anshul Dalal <anshuld@ti.com>
Signed-off-by: Bryan Brattlof <bb@ti.com>
---
Changes in v3:
- Added TI Copyright
- Link to v2: https://lore.kernel.org/r/20260721-am62lx-v2-0-33ff580c267d@ti.com
Changes in v2:
- Coalesced boot parameter table Kconfig address
- Link to v1: https://lore.kernel.org/r/20260717-am62lx-v1-0-b9830633afb8@ti.com
---
arch/arm/mach-k3/Kconfig | 17 +-
arch/arm/mach-k3/Makefile | 2 +
arch/arm/mach-k3/am62lx/Kconfig | 23 ++
arch/arm/mach-k3/am62lx/Makefile | 7 +
arch/arm/mach-k3/am62lx/am62l3_fdt.c | 12 +
arch/arm/mach-k3/am62lx/am62l3_init.c | 58 ++++
arch/arm/mach-k3/am62lx/boot.c | 83 +++++
arch/arm/mach-k3/am62lx/schema.yaml | 427 +++++++++++++++++++++++++
arch/arm/mach-k3/include/mach/am62l_hardware.h | 48 +++
arch/arm/mach-k3/include/mach/am62l_spl.h | 41 +++
arch/arm/mach-k3/include/mach/hardware.h | 4 +
arch/arm/mach-k3/include/mach/spl.h | 4 +
include/configs/am62l3_evm.h | 14 +
13 files changed, 736 insertions(+), 4 deletions(-)
diff --git a/arch/arm/mach-k3/Kconfig b/arch/arm/mach-k3/Kconfig
index a32ed3a9683f..8249fc97bc93 100644
--- a/arch/arm/mach-k3/Kconfig
+++ b/arch/arm/mach-k3/Kconfig
@@ -10,6 +10,15 @@ config SOC_K3_AM625
config SOC_K3_AM62A7
bool "TI's K3 based AM62A7 SoC Family Support"
+config SOC_K3_AM62L3
+ bool "TI's K3 based AM62L3 SoC Family Support"
+ select CLK_SCMI
+ select SPL_CLK_SCMI
+ select SCMI_FIRMWARE
+ select SCMI_POWER_DOMAIN
+ select SPL_SCMI_POWER_DOMAIN
+ select SYSRESET_PSCI
+
config SOC_K3_AM62P5
bool "TI's K3 based AM62P5 SoC Family Support"
@@ -81,11 +90,9 @@ config SYS_K3_BOOT_PARAM_TABLE_INDEX
default 0x41cffbfc if SOC_K3_J721E || SOC_K3_J7200
default 0x41cfdbfc if SOC_K3_J721S2 || SOC_K3_J784S4
default 0x701bebfc if SOC_K3_AM642
- default 0x43c3f290 if SOC_K3_AM625
+ default 0x43c3f290 if SOC_K3_AM625 || SOC_K3_AM62L3 || SOC_K3_AM62P5 || SOC_K3_J722S
default 0x43c3f290 if SOC_K3_AM62A7 && CPU_V7R
default 0x7000f290 if SOC_K3_AM62A7 && ARM64
- default 0x43c4f290 if SOC_K3_AM62P5
- default 0x43c7f290 if SOC_K3_J722S
help
Address at which ROM stores the value which determines if SPL
is booted up by primary boot media or secondary boot media.
@@ -124,7 +131,7 @@ config K3_EARLY_CONS_IDX
config K3_ATF_LOAD_ADDR
hex "Load address of ATF image"
- default 0x80000000 if (SOC_K3_AM625 || SOC_K3_AM62A7 || SOC_K3_AM62P5 || SOC_K3_J722S)
+ default 0x80000000 if (SOC_K3_AM625 || SOC_K3_AM62A7 || SOC_K3_AM62P5 || SOC_K3_J722S || SOC_K3_AM62L3)
default 0x70000000
help
The load address for the ATF image. This value is used to build the
@@ -133,6 +140,7 @@ config K3_ATF_LOAD_ADDR
config K3_ATF_RESERVED_SIZE
hex "Reserved memory size for ATF"
default 0x80000 if (SOC_K3_AM625 || SOC_K3_AM62A7 || SOC_K3_AM62P5 || SOC_K3_J722S)
+ default 0x200000 if SOC_K3_AM62L3
default 0x20000
help
The runtime memory size reserved for ATF. This value is used to fixup the
@@ -206,6 +214,7 @@ source "arch/arm/mach-k3/am65x/Kconfig"
source "arch/arm/mach-k3/am64x/Kconfig"
source "arch/arm/mach-k3/am62x/Kconfig"
source "arch/arm/mach-k3/am62ax/Kconfig"
+source "arch/arm/mach-k3/am62lx/Kconfig"
source "arch/arm/mach-k3/am62px/Kconfig"
source "arch/arm/mach-k3/j721e/Kconfig"
source "arch/arm/mach-k3/j7200/Kconfig"
diff --git a/arch/arm/mach-k3/Makefile b/arch/arm/mach-k3/Makefile
index b2fd5810b67c..66ae20143b6f 100644
--- a/arch/arm/mach-k3/Makefile
+++ b/arch/arm/mach-k3/Makefile
@@ -6,9 +6,11 @@
obj-$(CONFIG_ARM64) += arm64/
obj-$(CONFIG_CPU_V7R) += r5/
obj-$(CONFIG_OF_LIBFDT) += common_fdt.o
+
obj-y += common.o security.o k3-ddr.o
obj-$(CONFIG_SOC_K3_AM62A7) += am62ax/
obj-$(CONFIG_SOC_K3_AM62P5) += am62px/
+obj-$(CONFIG_SOC_K3_AM62L3) += am62lx/
obj-$(CONFIG_SOC_K3_AM625) += am62x/
obj-$(CONFIG_SOC_K3_AM642) += am64x/
obj-$(CONFIG_SOC_K3_AM654) += am65x/
diff --git a/arch/arm/mach-k3/am62lx/Kconfig b/arch/arm/mach-k3/am62lx/Kconfig
new file mode 100644
index 000000000000..d9609a91993a
--- /dev/null
+++ b/arch/arm/mach-k3/am62lx/Kconfig
@@ -0,0 +1,23 @@
+# SPDX-License-Identifier: GPL-2.0+
+#
+# Copyright (C) 2026 Texas Instruments Incorporated - https://www.ti.com/
+#
+
+if SOC_K3_AM62L3
+
+choice
+ prompt "TI K3 AM62Lx based boards"
+ optional
+
+config TARGET_AM62L3_EVM
+ bool "TI K3 based AM62L5 EVM"
+ select ARM64
+ select BINMAN
+ select OF_UPSTREAM
+ select OF_SYSTEM_SETUP
+
+endchoice
+
+source "board/ti/am62lx/Kconfig"
+
+endif
diff --git a/arch/arm/mach-k3/am62lx/Makefile b/arch/arm/mach-k3/am62lx/Makefile
new file mode 100644
index 000000000000..c97ffe27492f
--- /dev/null
+++ b/arch/arm/mach-k3/am62lx/Makefile
@@ -0,0 +1,7 @@
+# SPDX-License-Identifier: GPL-2.0+
+#
+# Copyright (C) 2026 Texas Instruments Incorporated - https://www.ti.com/
+#
+obj-$(CONFIG_OF_SYSTEM_SETUP) += am62l3_fdt.o
+obj-$(CONFIG_SPL_BUILD) += am62l3_init.o
+obj-y += boot.o
diff --git a/arch/arm/mach-k3/am62lx/am62l3_fdt.c b/arch/arm/mach-k3/am62lx/am62l3_fdt.c
new file mode 100644
index 000000000000..da8c2d18ba86
--- /dev/null
+++ b/arch/arm/mach-k3/am62lx/am62l3_fdt.c
@@ -0,0 +1,12 @@
+// SPDX-License-Identifier: GPL-2.0-or-later
+/*
+ * Copyright (C) 2026 Texas Instruments Incorporated - https://www.ti.com/
+ */
+
+#include <asm/arch/k3-common-fdt.h>
+#include <fdt_support.h>
+
+int ft_system_setup(void *blob, struct bd_info *bd)
+{
+ return fdt_fixup_reserved(blob);
+}
diff --git a/arch/arm/mach-k3/am62lx/am62l3_init.c b/arch/arm/mach-k3/am62lx/am62l3_init.c
new file mode 100644
index 000000000000..ee2a50f808d0
--- /dev/null
+++ b/arch/arm/mach-k3/am62lx/am62l3_init.c
@@ -0,0 +1,58 @@
+// SPDX-License-Identifier: GPL-2.0
+/*
+ * AM62Lx: SoC specific initialization
+ *
+ * Copyright (C) 2026 Texas Instruments Incorporated - https://www.ti.com/
+ */
+
+#include <asm/arch/hardware.h>
+#include <asm/io.h>
+#include <dm.h>
+#include <dm/uclass-internal.h>
+#include <hang.h>
+#include <spl.h>
+
+#include "../common.h"
+
+void board_init_f(ulong dummy)
+{
+ int ret;
+
+ ret = spl_early_init();
+ if (ret) {
+ debug("spl_early_init() failed: %d\n", ret);
+ hang();
+ }
+
+ preloader_console_init();
+ debug("am62lx_init: %s done\n", __func__);
+}
+
+u32 spl_boot_device(void)
+{
+ return get_boot_device();
+}
+
+u32 spl_mmc_boot_mode(struct mmc *mmc, const u32 boot_device)
+{
+ u32 devstat = readl(CTRLMMR_MAIN_DEVSTAT);
+ u32 bootmode = (devstat & MAIN_DEVSTAT_PRIMARY_BOOTMODE_MASK) >>
+ MAIN_DEVSTAT_PRIMARY_BOOTMODE_SHIFT;
+ u32 bootmode_cfg = (devstat & MAIN_DEVSTAT_PRIMARY_BOOTMODE_CFG_MASK) >>
+ MAIN_DEVSTAT_PRIMARY_BOOTMODE_CFG_SHIFT;
+
+ switch (bootmode) {
+ case BOOT_DEVICE_EMMC:
+ if (IS_ENABLED(CONFIG_SUPPORT_EMMC_BOOT))
+ return MMCSD_MODE_EMMCBOOT;
+ if (IS_ENABLED(CONFIG_SPL_FS_FAT) || IS_ENABLED(CONFIG_SPL_FS_EXT4))
+ return MMCSD_MODE_FS;
+ return MMCSD_MODE_EMMCBOOT;
+ case BOOT_DEVICE_MMC:
+ if (bootmode_cfg & MAIN_DEVSTAT_PRIMARY_MMC_FS_RAW_MASK)
+ return MMCSD_MODE_RAW;
+ default:
+ return MMCSD_MODE_FS;
+ }
+}
+
diff --git a/arch/arm/mach-k3/am62lx/boot.c b/arch/arm/mach-k3/am62lx/boot.c
new file mode 100644
index 000000000000..77ddabce856d
--- /dev/null
+++ b/arch/arm/mach-k3/am62lx/boot.c
@@ -0,0 +1,83 @@
+// SPDX-License-Identifier: GPL-2.0+
+// SPDX-FileCopyrightText: Copyright (C) 2026 Texas Instruments Incorporated - https://www.ti.com/
+#include <asm/io.h>
+#include <asm/arch/hardware.h>
+#include <asm/arch/am62l_spl.h>
+
+static u32 get_backup_bootmedia(u32 devstat)
+{
+ u32 bootmode = (devstat & MAIN_DEVSTAT_BACKUP_BOOTMODE_MASK) >>
+ MAIN_DEVSTAT_BACKUP_BOOTMODE_SHIFT;
+ u32 bootmode_cfg = (devstat & MAIN_DEVSTAT_BACKUP_BOOTMODE_CFG_MASK) >>
+ MAIN_DEVSTAT_BACKUP_BOOTMODE_CFG_SHIFT;
+
+ switch (bootmode) {
+ case BACKUP_BOOT_DEVICE_UART:
+ return BOOT_DEVICE_UART;
+
+ case BACKUP_BOOT_DEVICE_MMC:
+ if (bootmode_cfg)
+ return BOOT_DEVICE_MMC2;
+ return BOOT_DEVICE_MMC1;
+
+ case BACKUP_BOOT_DEVICE_SPI:
+ return BOOT_DEVICE_SPI;
+
+ case BACKUP_BOOT_DEVICE_DFU:
+ if (bootmode_cfg & MAIN_DEVSTAT_BACKUP_USB_MODE_MASK)
+ return BOOT_DEVICE_USB;
+ return BOOT_DEVICE_DFU;
+ };
+
+ return BOOT_DEVICE_RAM;
+}
+
+static u32 get_primary_bootmedia(u32 devstat)
+{
+ u32 bootmode = (devstat & MAIN_DEVSTAT_PRIMARY_BOOTMODE_MASK) >>
+ MAIN_DEVSTAT_PRIMARY_BOOTMODE_SHIFT;
+ u32 bootmode_cfg = (devstat & MAIN_DEVSTAT_PRIMARY_BOOTMODE_CFG_MASK) >>
+ MAIN_DEVSTAT_PRIMARY_BOOTMODE_CFG_SHIFT;
+
+ switch (bootmode) {
+ case BOOT_DEVICE_XSPI_FAST:
+ case BOOT_DEVICE_XSPI:
+ case BOOT_DEVICE_OSPI:
+ case BOOT_DEVICE_QSPI:
+ case BOOT_DEVICE_SPI:
+ return BOOT_DEVICE_SPI;
+
+ case BOOT_DEVICE_EMMC:
+ return BOOT_DEVICE_MMC1;
+
+ case BOOT_DEVICE_SPI_NAND:
+ return BOOT_DEVICE_SPI_NAND;
+
+ case BOOT_DEVICE_MMC:
+ if ((bootmode_cfg & MAIN_DEVSTAT_PRIMARY_MMC_PORT_MASK) >>
+ MAIN_DEVSTAT_PRIMARY_MMC_PORT_SHIFT)
+ return BOOT_DEVICE_MMC2;
+ return BOOT_DEVICE_MMC1;
+
+ case BOOT_DEVICE_DFU:
+ if ((bootmode_cfg & MAIN_DEVSTAT_PRIMARY_USB_MODE_MASK) >>
+ MAIN_DEVSTAT_PRIMARY_USB_MODE_SHIFT)
+ return BOOT_DEVICE_USB;
+ return BOOT_DEVICE_DFU;
+
+ case BOOT_DEVICE_NOBOOT:
+ return BOOT_DEVICE_RAM;
+ }
+
+ return bootmode;
+}
+
+u32 get_boot_device(void)
+{
+ u32 devstat = readl(CTRLMMR_MAIN_DEVSTAT);
+ u32 bootmode = *(u32 *)(K3_BOOT_PARAM_TABLE_INDEX_OCRAM);
+
+ if (bootmode == K3_PRIMARY_BOOTMODE)
+ return get_primary_bootmedia(devstat);
+ return get_backup_bootmedia(devstat);
+}
diff --git a/arch/arm/mach-k3/am62lx/schema.yaml b/arch/arm/mach-k3/am62lx/schema.yaml
new file mode 100644
index 000000000000..c1dcd9ced403
--- /dev/null
+++ b/arch/arm/mach-k3/am62lx/schema.yaml
@@ -0,0 +1,427 @@
+# SPDX-License-Identifier: GPL-2.0-only OR MIT
+#
+# Copyright (C) 2026 Texas Instruments Incorporated - https://www.ti.com/
+#
+# Config schema for TI AM62L devices
+#
+
+---
+
+definitions:
+ u8:
+ type: integer
+ minimum: 0
+ maximum: 0xff
+ u16:
+ type: integer
+ minimum: 0
+ maximum: 0xffff
+ u32:
+ type: integer
+ minimum: 0
+ maximum: 0xffffffff
+
+
+
+type: object
+properties:
+ pm-cfg:
+ type: object
+ properties:
+ rev:
+ type: object
+ properties:
+ boardcfg_abi_maj:
+ $ref: "#/definitions/u8"
+ boardcfg_abi_min:
+ $ref: "#/definitions/u8"
+ board-cfg:
+ type: object
+ properties:
+ rev:
+ type: object
+ properties:
+ boardcfg_abi_maj:
+ $ref: "#/definitions/u8"
+ boardcfg_abi_min:
+ $ref: "#/definitions/u8"
+ control:
+ type: object
+ properties:
+ subhdr:
+ type: object
+ properties:
+ magic:
+ $ref: "#/definitions/u16"
+ size:
+ $ref: "#/definitions/u16"
+ main_isolation_enable:
+ $ref: "#/definitions/u8"
+ main_isolation_hostid:
+ $ref: "#/definitions/u16"
+
+ bm_writer_cfg:
+ type: object
+ properties:
+ subhdr:
+ type: object
+ properties:
+ magic:
+ $ref: "#/definitions/u16"
+ size:
+ $ref: "#/definitions/u16"
+ allowed_host:
+ $ref : "#/definitions/u8"
+
+ reserved:
+ type: array
+ minItems: 7
+ maxItems: 7
+ items:
+ $ref: "#/definitions/u8"
+
+ debug_cfg:
+ type: object
+ properties:
+ subhdr:
+ type: object
+ properties:
+ magic:
+ $ref: "#/definitions/u16"
+ size:
+ $ref: "#/definitions/u16"
+ trace_dst_enables:
+ $ref: "#/definitions/u16"
+ trace_src_enables:
+ $ref: "#/definitions/u16"
+
+ sec-cfg:
+ type: object
+ properties:
+ rev:
+ type: object
+ properties:
+ boardcfg_abi_maj:
+ $ref: "#/definitions/u8"
+ boardcfg_abi_min:
+ $ref: "#/definitions/u8"
+
+ processor_acl_list:
+ type: object
+ properties:
+ subhdr:
+ type: object
+ properties:
+ magic:
+ $ref: "#/definitions/u16"
+ size:
+ $ref: "#/definitions/u16"
+ proc_acl_entries:
+ type: array
+ minItems: 32
+ maxItems: 32
+ items:
+ type: object
+ properties:
+ processor_id:
+ $ref: "#/definitions/u8"
+ proc_access_master:
+ $ref: "#/definitions/u8"
+ proc_access_secondary:
+ type: array
+ minItems: 3
+ maxItems: 3
+ items:
+ $ref: "#/definitions/u8"
+ host_hierarchy:
+ type: object
+ properties:
+ subhdr:
+ type: object
+ properties:
+ magic:
+ $ref: "#/definitions/u16"
+ size:
+ $ref: "#/definitions/u16"
+ host_hierarchy_entries:
+ type: array
+ minItems: 32
+ maxItems: 32
+ items:
+ type: object
+ properties:
+ host_id:
+ $ref: "#/definitions/u8"
+ supervisor_host_id:
+ $ref: "#/definitions/u8"
+
+ otp_config:
+ type: object
+ properties:
+ subhdr:
+ type: object
+ properties:
+ magic:
+ $ref: "#/definitions/u16"
+ size:
+ $ref: "#/definitions/u16"
+ otp_entry:
+ type: array
+ minItems: 32
+ maxItems: 32
+ items:
+ type: object
+ properties:
+ host_id:
+ $ref: "#/definitions/u8"
+ host_perms:
+ $ref: "#/definitions/u8"
+ write_host_id:
+ $ref: "#/definitions/u8"
+
+ dkek_config:
+ type: object
+ properties:
+ subhdr:
+ type: object
+ properties:
+ magic:
+ $ref: "#/definitions/u16"
+ size:
+ $ref: "#/definitions/u16"
+ allowed_hosts:
+ type: array
+ minItems: 4
+ maxItems: 4
+ items:
+ $ref: "#/definitions/u8"
+ allow_dkek_export_tisci:
+ $ref: "#/definitions/u8"
+ rsvd:
+ type: array
+ minItems: 3
+ maxItems: 3
+ items:
+ $ref: "#/definitions/u8"
+
+ sa2ul_cfg:
+ type: object
+ properties:
+ subhdr:
+ type: object
+ properties:
+ magic:
+ $ref: "#/definitions/u16"
+ size:
+ $ref: "#/definitions/u16"
+ rsvd:
+ type: array
+ minItems: 2
+ maxItems: 4
+ items:
+ $ref: "#/definitions/u8"
+ enable_saul_psil_global_config_writes:
+ $ref: "#/definitions/u8"
+ auth_resource_owner:
+ $ref: "#/definitions/u8"
+
+ sec_dbg_config:
+ type: object
+ properties:
+ subhdr:
+ type: object
+ properties:
+ magic:
+ $ref: "#/definitions/u16"
+ size:
+ $ref: "#/definitions/u16"
+ allow_jtag_unlock:
+ $ref: "#/definitions/u8"
+ allow_wildcard_unlock:
+ $ref: "#/definitions/u8"
+ allowed_debug_level_rsvd:
+ $ref: "#/definitions/u8"
+ rsvd:
+ $ref: "#/definitions/u8"
+ min_cert_rev:
+ $ref: "#/definitions/u32"
+ jtag_unlock_hosts:
+ type: array
+ minItems: 4
+ maxItems: 4
+ items:
+ $ref: "#/definitions/u8"
+
+
+ sec_handover_cfg:
+ type: object
+ properties:
+ subhdr:
+ type: object
+ properties:
+ magic:
+ $ref: "#/definitions/u16"
+ size:
+ $ref: "#/definitions/u16"
+ handover_msg_sender:
+ $ref: "#/definitions/u8"
+ handover_to_host_id:
+ $ref: "#/definitions/u8"
+ rsvd:
+ type: array
+ minItems: 4
+ maxItems: 4
+ items:
+ $ref: "#/definitions/u8"
+
+ rm-cfg:
+ type: object
+ properties:
+ rm_boardcfg:
+ type: object
+ properties:
+ rev:
+ type: object
+ properties:
+ boardcfg_abi_maj:
+ $ref: "#/definitions/u8"
+ boardcfg_abi_min:
+ $ref: "#/definitions/u8"
+
+ host_cfg:
+ type: object
+ properties:
+ subhdr:
+ type: object
+ properties:
+ magic:
+ $ref: "#/definitions/u16"
+ size:
+ $ref: "#/definitions/u16"
+ host_cfg_entries:
+ type: array
+ minItems: 0
+ maxItems: 32
+ items:
+ type: object
+ properties:
+ host_id:
+ $ref: "#/definitions/u8"
+ allowed_atype:
+ $ref: "#/definitions/u8"
+ allowed_qos:
+ $ref: "#/definitions/u16"
+ allowed_orderid:
+ $ref: "#/definitions/u32"
+ allowed_priority:
+ $ref: "#/definitions/u16"
+ allowed_sched_priority:
+ $ref: "#/definitions/u8"
+ resasg:
+ type: object
+ properties:
+ subhdr:
+ type: object
+ properties:
+ magic:
+ $ref: "#/definitions/u16"
+ size:
+ $ref: "#/definitions/u16"
+ resasg_entries_size:
+ $ref: "#/definitions/u16"
+ reserved:
+ $ref: "#/definitions/u16"
+
+ resasg_entries:
+ type: array
+ minItems: 0
+ maxItems: 468
+ items:
+ type: object
+ properties:
+ start_resource:
+ $ref: "#/definitions/u16"
+ num_resource:
+ $ref: "#/definitions/u16"
+ type:
+ $ref: "#/definitions/u16"
+ host_id:
+ $ref: "#/definitions/u8"
+ reserved:
+ $ref: "#/definitions/u8"
+
+ tifs-rm-cfg:
+ type: object
+ properties:
+ rm_boardcfg:
+ type: object
+ properties:
+ rev:
+ type: object
+ properties:
+ boardcfg_abi_maj:
+ $ref: "#/definitions/u8"
+ boardcfg_abi_min:
+ $ref: "#/definitions/u8"
+
+ host_cfg:
+ type: object
+ properties:
+ subhdr:
+ type: object
+ properties:
+ magic:
+ $ref: "#/definitions/u16"
+ size:
+ $ref: "#/definitions/u16"
+ host_cfg_entries:
+ type: array
+ minItems: 0
+ maxItems: 32
+ items:
+ type: object
+ properties:
+ host_id:
+ $ref: "#/definitions/u8"
+ allowed_atype:
+ $ref: "#/definitions/u8"
+ allowed_qos:
+ $ref: "#/definitions/u16"
+ allowed_orderid:
+ $ref: "#/definitions/u32"
+ allowed_priority:
+ $ref: "#/definitions/u16"
+ allowed_sched_priority:
+ $ref: "#/definitions/u8"
+ resasg:
+ type: object
+ properties:
+ subhdr:
+ type: object
+ properties:
+ magic:
+ $ref: "#/definitions/u16"
+ size:
+ $ref: "#/definitions/u16"
+ resasg_entries_size:
+ $ref: "#/definitions/u16"
+ reserved:
+ $ref: "#/definitions/u16"
+
+ resasg_entries:
+ type: array
+ minItems: 0
+ maxItems: 468
+ items:
+ type: object
+ properties:
+ start_resource:
+ $ref: "#/definitions/u16"
+ num_resource:
+ $ref: "#/definitions/u16"
+ type:
+ $ref: "#/definitions/u16"
+ host_id:
+ $ref: "#/definitions/u8"
+ reserved:
+ $ref: "#/definitions/u8"
diff --git a/arch/arm/mach-k3/include/mach/am62l_hardware.h b/arch/arm/mach-k3/include/mach/am62l_hardware.h
new file mode 100644
index 000000000000..7791511ff2a2
--- /dev/null
+++ b/arch/arm/mach-k3/include/mach/am62l_hardware.h
@@ -0,0 +1,48 @@
+/* SPDX-License-Identifier: GPL-2.0+ */
+/*
+ * AM62Lx SoC definitions, structures etc.
+ *
+ * Copyright (C) 2026 Texas Instruments Incorporated - https://www.ti.com/
+ */
+
+#ifndef __ASM_ARCH_AM62L_HARDWARE_H
+#define __ASM_ARCH_AM62L_HARDWARE_H
+
+#include <config.h>
+#ifndef __ASSEMBLY__
+#include <linux/bitops.h>
+#endif
+
+#define CTRL_MMR0_BASE 0x00100000
+#define WKUP_CTRL_MMR0_BASE 0x43000000
+#define WKUP_CTRL_MMR1_BASE 0x43010000
+
+#define CTRLMMR_MAIN_DEVSTAT (WKUP_CTRL_MMR1_BASE + 0x30)
+#define MAIN_DEVSTAT_PRIMARY_BOOTMODE_MASK GENMASK(6, 3)
+#define MAIN_DEVSTAT_PRIMARY_BOOTMODE_SHIFT 3
+#define MAIN_DEVSTAT_PRIMARY_BOOTMODE_CFG_MASK GENMASK(9, 7)
+#define MAIN_DEVSTAT_PRIMARY_BOOTMODE_CFG_SHIFT 7
+#define MAIN_DEVSTAT_BACKUP_BOOTMODE_MASK GENMASK(12, 10)
+#define MAIN_DEVSTAT_BACKUP_BOOTMODE_SHIFT 10
+#define MAIN_DEVSTAT_BACKUP_BOOTMODE_CFG_MASK BIT(13)
+#define MAIN_DEVSTAT_BACKUP_BOOTMODE_CFG_SHIFT 13
+
+/* Primary Bootmode MMC Config macros */
+#define MAIN_DEVSTAT_PRIMARY_MMC_PORT_MASK BIT(2)
+#define MAIN_DEVSTAT_PRIMARY_MMC_PORT_SHIFT 2
+#define MAIN_DEVSTAT_PRIMARY_MMC_FS_RAW_MASK BIT(0)
+#define MAIN_DEVSTAT_PRIMARY_MMC_FS_RAW_SHIFT 0
+
+/* Primary Bootmode USB Config macros */
+#define MAIN_DEVSTAT_PRIMARY_USB_MODE_SHIFT 1
+#define MAIN_DEVSTAT_PRIMARY_USB_MODE_MASK BIT(1)
+
+/* Backup Bootmode USB Config macros */
+#define MAIN_DEVSTAT_BACKUP_USB_MODE_MASK BIT(0)
+
+/* address boot rom leaves its boot structure */
+#define K3_BOOT_PARAM_TABLE_INDEX_OCRAM 0x70816e70
+
+static const u32 put_core_ids[] = {};
+
+#endif /* __ASM_ARCH_AM62L_HARDWARE_H */
diff --git a/arch/arm/mach-k3/include/mach/am62l_spl.h b/arch/arm/mach-k3/include/mach/am62l_spl.h
new file mode 100644
index 000000000000..52d702d179c6
--- /dev/null
+++ b/arch/arm/mach-k3/include/mach/am62l_spl.h
@@ -0,0 +1,41 @@
+/* SPDX-License-Identifier: GPL-2.0+ */
+/*
+ * Copyright (C) 2026 Texas Instruments Incorporated - https://www.ti.com/
+ */
+
+#ifndef _ASM_ARCH_AM62L_SPL_H_
+#define _ASM_ARCH_AM62L_SPL_H_
+
+/* Primary BootMode devices */
+#define BOOT_DEVICE_SPI_NAND 0x00
+#define BOOT_DEVICE_RAM 0xFF
+#define BOOT_DEVICE_OSPI 0x01
+#define BOOT_DEVICE_QSPI 0x02
+#define BOOT_DEVICE_SPI 0x03
+#define BOOT_DEVICE_UART 0x07
+#define BOOT_DEVICE_MMC 0x08
+#define BOOT_DEVICE_EMMC 0x09
+#define BOOT_DEVICE_USB 0x0A
+#define BOOT_DEVICE_DFU 0x0A
+#define BOOT_DEVICE_GPMC_NAND 0x0B
+#define BOOT_DEVICE_XSPI_FAST 0x0D
+#define BOOT_DEVICE_XSPI 0x0E
+#define BOOT_DEVICE_NOBOOT 0x0F
+
+/* U-Boot used aliases */
+#define BOOT_DEVICE_MMC2 BOOT_DEVICE_MMC
+#define BOOT_DEVICE_MMC1 BOOT_DEVICE_EMMC
+/* Invalid Choices for the AM62Lx */
+#define BOOT_DEVICE_MMC2_2 0x1F
+#define BOOT_DEVICE_ETHERNET 0x1F
+
+/* Backup BootMode devices */
+#define BACKUP_BOOT_DEVICE_USB 0x01
+#define BACKUP_BOOT_DEVICE_DFU 0x01
+#define BACKUP_BOOT_DEVICE_UART 0x03
+#define BACKUP_BOOT_DEVICE_MMC 0x05
+#define BACKUP_BOOT_DEVICE_SPI 0x06
+
+#define K3_PRIMARY_BOOTMODE 0x0
+
+#endif /* _ASM_ARCH_AM62L_SPL_H_ */
diff --git a/arch/arm/mach-k3/include/mach/hardware.h b/arch/arm/mach-k3/include/mach/hardware.h
index 6b86f6ed12e6..cbf43deaa3fc 100644
--- a/arch/arm/mach-k3/include/mach/hardware.h
+++ b/arch/arm/mach-k3/include/mach/hardware.h
@@ -16,6 +16,10 @@
#include "am62a_hardware.h"
#endif
+#ifdef CONFIG_SOC_K3_AM62L3
+#include "am62l_hardware.h"
+#endif
+
#ifdef CONFIG_SOC_K3_AM62P5
#include "am62p_hardware.h"
#endif
diff --git a/arch/arm/mach-k3/include/mach/spl.h b/arch/arm/mach-k3/include/mach/spl.h
index a47441ae6a59..ff0b5d41b9f1 100644
--- a/arch/arm/mach-k3/include/mach/spl.h
+++ b/arch/arm/mach-k3/include/mach/spl.h
@@ -46,4 +46,8 @@
#include "j722s_spl.h"
#endif
+#ifdef CONFIG_SOC_K3_AM62L3
+#include "am62l_spl.h"
+#endif
+
#endif /* _ASM_ARCH_SPL_H_ */
diff --git a/include/configs/am62l3_evm.h b/include/configs/am62l3_evm.h
new file mode 100644
index 000000000000..181d450daf10
--- /dev/null
+++ b/include/configs/am62l3_evm.h
@@ -0,0 +1,14 @@
+/* SPDX-License-Identifier: GPL-2.0+ */
+/*
+ * Configuration header file for K3 AM62L SoC family
+ *
+ * Copyright (C) 2026 Texas Instruments Incorporated - https://www.ti.com/
+ *
+ */
+
+#ifndef __CONFIG_AM62L3_EVM_H
+#define __CONFIG_AM62L3_EVM_H
+
+#include <configs/ti_armv7_common.h>
+
+#endif /* __CONFIG_AM62L3_EVM_H */
--
2.54.0
^ permalink raw reply related [flat|nested] 21+ messages in thread* Re: [PATCH v3 05/11] arm: mach-k3: Add initial am62lx SoC support
2026-08-04 0:09 ` [PATCH v3 05/11] arm: mach-k3: Add initial am62lx SoC support Bryan Brattlof
@ 2026-08-04 11:12 ` Anshul Dalal
0 siblings, 0 replies; 21+ messages in thread
From: Anshul Dalal @ 2026-08-04 11:12 UTC (permalink / raw)
To: Bryan Brattlof, u-boot
Cc: Peng Fan, Tom Rini, Dan Carpenter, Anshul Dalal, Simon Glass,
Alper Nebi Yasak, Ilias Apalodimas, Aristo Chen, Udit Kumar,
Andrew Davis, Daniel Golle, Johan Jonker, Vignesh Raghavendra,
Paresh Bhagat, Swamil Jain, Neha Malcom Francis, Shiva Tripathi,
Apurva Nandan, Chintan Vankar, Francesco Dolcini, Marek Vasut,
Siddharth Vadapalli, Hrushikesh Salunke, Manorit Chawdhry
On Tue Aug 4, 2026 at 5:39 AM IST, Bryan Brattlof wrote:
> Add initial mach-k3 files needed to support boards based on the AM62L
> family of SoCs
>
> Tested-by: Anshul Dalal <anshuld@ti.com>
> Signed-off-by: Bryan Brattlof <bb@ti.com>
> ---
[snip]
> diff --git a/arch/arm/mach-k3/include/mach/am62l_hardware.h b/arch/arm/mach-k3/include/mach/am62l_hardware.h
> new file mode 100644
> index 000000000000..7791511ff2a2
> --- /dev/null
> +++ b/arch/arm/mach-k3/include/mach/am62l_hardware.h
> @@ -0,0 +1,48 @@
> +/* SPDX-License-Identifier: GPL-2.0+ */
> +/*
> + * AM62Lx SoC definitions, structures etc.
> + *
> + * Copyright (C) 2026 Texas Instruments Incorporated - https://www.ti.com/
> + */
> +
> +#ifndef __ASM_ARCH_AM62L_HARDWARE_H
> +#define __ASM_ARCH_AM62L_HARDWARE_H
> +
> +#include <config.h>
> +#ifndef __ASSEMBLY__
> +#include <linux/bitops.h>
> +#endif
> +
> +#define CTRL_MMR0_BASE 0x00100000
> +#define WKUP_CTRL_MMR0_BASE 0x43000000
> +#define WKUP_CTRL_MMR1_BASE 0x43010000
> +
> +#define CTRLMMR_MAIN_DEVSTAT (WKUP_CTRL_MMR1_BASE + 0x30)
> +#define MAIN_DEVSTAT_PRIMARY_BOOTMODE_MASK GENMASK(6, 3)
> +#define MAIN_DEVSTAT_PRIMARY_BOOTMODE_SHIFT 3
> +#define MAIN_DEVSTAT_PRIMARY_BOOTMODE_CFG_MASK GENMASK(9, 7)
> +#define MAIN_DEVSTAT_PRIMARY_BOOTMODE_CFG_SHIFT 7
> +#define MAIN_DEVSTAT_BACKUP_BOOTMODE_MASK GENMASK(12, 10)
> +#define MAIN_DEVSTAT_BACKUP_BOOTMODE_SHIFT 10
> +#define MAIN_DEVSTAT_BACKUP_BOOTMODE_CFG_MASK BIT(13)
> +#define MAIN_DEVSTAT_BACKUP_BOOTMODE_CFG_SHIFT 13
> +
> +/* Primary Bootmode MMC Config macros */
> +#define MAIN_DEVSTAT_PRIMARY_MMC_PORT_MASK BIT(2)
> +#define MAIN_DEVSTAT_PRIMARY_MMC_PORT_SHIFT 2
> +#define MAIN_DEVSTAT_PRIMARY_MMC_FS_RAW_MASK BIT(0)
> +#define MAIN_DEVSTAT_PRIMARY_MMC_FS_RAW_SHIFT 0
> +
> +/* Primary Bootmode USB Config macros */
> +#define MAIN_DEVSTAT_PRIMARY_USB_MODE_SHIFT 1
> +#define MAIN_DEVSTAT_PRIMARY_USB_MODE_MASK BIT(1)
> +
> +/* Backup Bootmode USB Config macros */
> +#define MAIN_DEVSTAT_BACKUP_USB_MODE_MASK BIT(0)
> +
> +/* address boot rom leaves its boot structure */
> +#define K3_BOOT_PARAM_TABLE_INDEX_OCRAM 0x70816e70
> +
> +static const u32 put_core_ids[] = {};
I have some issues with the use of put_core_ids here but looks like it
requires a more involved refactor of mach-k3 common code. I can take up
that cleanup once this is merged.
Reviewed-by: Anshul Dalal <anshuld@ti.com>
^ permalink raw reply [flat|nested] 21+ messages in thread
* [PATCH v3 06/11] board: ti: am62lx: add initial board files
2026-08-04 0:09 [PATCH v3 00/11] arm: mach-k3: introduce basic support for the AM62L Bryan Brattlof
` (4 preceding siblings ...)
2026-08-04 0:09 ` [PATCH v3 05/11] arm: mach-k3: Add initial am62lx SoC support Bryan Brattlof
@ 2026-08-04 0:09 ` Bryan Brattlof
2026-08-04 11:14 ` Anshul Dalal
2026-08-04 0:09 ` [PATCH v3 07/11] arm: dts: k3-am62lx: Add binman support Bryan Brattlof
` (4 subsequent siblings)
10 siblings, 1 reply; 21+ messages in thread
From: Bryan Brattlof @ 2026-08-04 0:09 UTC (permalink / raw)
To: u-boot
Cc: Peng Fan, Tom Rini, Dan Carpenter, Anshul Dalal, Simon Glass,
Alper Nebi Yasak, Bryan Brattlof, Ilias Apalodimas, Aristo Chen,
Udit Kumar, Andrew Davis, Daniel Golle, Johan Jonker,
Vignesh Raghavendra, Paresh Bhagat, Swamil Jain,
Neha Malcom Francis, Shiva Tripathi, Apurva Nandan,
Chintan Vankar, Francesco Dolcini, Marek Vasut,
Siddharth Vadapalli, Hrushikesh Salunke, Manorit Chawdhry
Add the initial board files to support the AM62L3-SK reference boards
for basic boot via SD and MMC
Tested-by: Anshul Dalal <anshuld@ti.com>
Signed-off-by: Bryan Brattlof <bb@ti.com>
---
Changes in v3:
- Removed 'emulated' from the board configuration file
- Link to v2: https://lore.kernel.org/r/20260721-am62lx-v2-0-33ff580c267d@ti.com
---
board/ti/am62lx/Kconfig | 19 +++
board/ti/am62lx/MAINTAINERS | 8 +
board/ti/am62lx/Makefile | 7 +
board/ti/am62lx/am62lx.env | 8 +
board/ti/am62lx/board-cfg.yaml | 32 ++++
board/ti/am62lx/evm.c | 19 +++
board/ti/am62lx/sec-cfg.yaml | 380 +++++++++++++++++++++++++++++++++++++++++
7 files changed, 473 insertions(+)
diff --git a/board/ti/am62lx/Kconfig b/board/ti/am62lx/Kconfig
new file mode 100644
index 000000000000..2ee6d0221178
--- /dev/null
+++ b/board/ti/am62lx/Kconfig
@@ -0,0 +1,19 @@
+# SPDX-License-Identifier: GPL-2.0+
+#
+# Copyright (C) 2026 Texas Instruments Incorporated - https://www.ti.com/
+#
+
+if TARGET_AM62L3_EVM
+
+config SYS_BOARD
+ default "am62lx"
+
+config SYS_VENDOR
+ default "ti"
+
+config SYS_CONFIG_NAME
+ default "am62l3_evm"
+
+source "board/ti/common/Kconfig"
+
+endif
diff --git a/board/ti/am62lx/MAINTAINERS b/board/ti/am62lx/MAINTAINERS
new file mode 100644
index 000000000000..e945689a7f17
--- /dev/null
+++ b/board/ti/am62lx/MAINTAINERS
@@ -0,0 +1,8 @@
+AM62Lx BOARD
+M: Vignesh Raghavendra <vigneshr@ti.com>
+M: Bryan Brattlof <bb@ti.com>
+M: Tom Rini <trini@konsulko.com>
+S: Maintained
+F: board/ti/am62lx/
+F: include/configs/am62l3_evm.h
+F: configs/am62lx_evm_defconfig
diff --git a/board/ti/am62lx/Makefile b/board/ti/am62lx/Makefile
new file mode 100644
index 000000000000..ac5f5e7e807a
--- /dev/null
+++ b/board/ti/am62lx/Makefile
@@ -0,0 +1,7 @@
+#
+# Copyright (C) 2026 Texas Instruments Incorporated - https://www.ti.com/
+#
+# SPDX-License-Identifier: GPL-2.0+
+#
+
+obj-y += evm.o
diff --git a/board/ti/am62lx/am62lx.env b/board/ti/am62lx/am62lx.env
new file mode 100644
index 000000000000..0dd86db400ee
--- /dev/null
+++ b/board/ti/am62lx/am62lx.env
@@ -0,0 +1,8 @@
+kernel_addr_r=0x82000000
+fdt_addr_r=0x88000000
+fdtoverlay_addr_r=0x89000000
+ramdisk_addr_r=0x88080000
+pxefile_addr_r=0x80100000
+
+dfu_alt_info_ram=
+ u-boot.img ram 0x83000000 0x400000
diff --git a/board/ti/am62lx/board-cfg.yaml b/board/ti/am62lx/board-cfg.yaml
new file mode 100644
index 000000000000..abb3174d4bcc
--- /dev/null
+++ b/board/ti/am62lx/board-cfg.yaml
@@ -0,0 +1,32 @@
+# SPDX-License-Identifier: GPL-2.0+
+# Copyright (C) 2026 Texas Instruments Incorporated - https://www.ti.com/
+#
+# Board configuration for the AM62L-EVM
+#
+---
+board-cfg:
+ rev:
+ boardcfg_abi_maj: 0x0
+ boardcfg_abi_min: 0x1
+
+ control:
+ subhdr:
+ magic: 0xC1D3
+ size: 7
+ main_isolation_enable: 0x5A
+ main_isolation_hostid: 0x2
+
+ bm_writer_cfg:
+ subhdr:
+ magic: 0x7D8A
+ size: 5
+ allowed_host: 10
+
+ reserved: [0, 0, 0, 0, 0, 0, 0]
+
+ debug_cfg:
+ subhdr:
+ magic: 0x020C
+ size: 8
+ trace_dst_enables: 0x00
+ trace_src_enables: 0x00
diff --git a/board/ti/am62lx/evm.c b/board/ti/am62lx/evm.c
new file mode 100644
index 000000000000..cafafb8ede87
--- /dev/null
+++ b/board/ti/am62lx/evm.c
@@ -0,0 +1,19 @@
+// SPDX-License-Identifier: GPL-2.0+
+/*
+ * Board specific initialization for AM62Lx platforms
+ *
+ * Copyright (C) 2026 Texas Instruments Incorporated - https://www.ti.com/
+ *
+ */
+
+#include <asm/arch/hardware.h>
+#include <asm/io.h>
+#include <dm/uclass.h>
+#include <env.h>
+#include <fdt_support.h>
+#include <spl.h>
+
+int board_init(void)
+{
+ return 0;
+}
diff --git a/board/ti/am62lx/sec-cfg.yaml b/board/ti/am62lx/sec-cfg.yaml
new file mode 100644
index 000000000000..044e8cb09dd7
--- /dev/null
+++ b/board/ti/am62lx/sec-cfg.yaml
@@ -0,0 +1,380 @@
+# SPDX-License-Identifier: GPL-2.0+
+# Copyright (C) 2026 Texas Instruments Incorporated - https://www.ti.com/
+#
+# Security management configuration for AM62Lx
+#
+---
+
+sec-cfg:
+ rev:
+ boardcfg_abi_maj: 0x0
+ boardcfg_abi_min: 0x1
+
+ processor_acl_list:
+ subhdr:
+ magic: 0xF1EA
+ size: 164
+
+ proc_acl_entries:
+ - # 1
+ processor_id: 0
+ proc_access_master: 0
+ proc_access_secondary: [0, 0, 0]
+ - # 2
+ processor_id: 0
+ proc_access_master: 0
+ proc_access_secondary: [0, 0, 0]
+ - # 3
+ processor_id: 0
+ proc_access_master: 0
+ proc_access_secondary: [0, 0, 0]
+ - # 4
+ processor_id: 0
+ proc_access_master: 0
+ proc_access_secondary: [0, 0, 0]
+ - # 5
+ processor_id: 0
+ proc_access_master: 0
+ proc_access_secondary: [0, 0, 0]
+ - # 6
+ processor_id: 0
+ proc_access_master: 0
+ proc_access_secondary: [0, 0, 0]
+ - # 7
+ processor_id: 0
+ proc_access_master: 0
+ proc_access_secondary: [0, 0, 0]
+ - # 8
+ processor_id: 0
+ proc_access_master: 0
+ proc_access_secondary: [0, 0, 0]
+ - # 9
+ processor_id: 0
+ proc_access_master: 0
+ proc_access_secondary: [0, 0, 0]
+ - # 10
+ processor_id: 0
+ proc_access_master: 0
+ proc_access_secondary: [0, 0, 0]
+ - # 11
+ processor_id: 0
+ proc_access_master: 0
+ proc_access_secondary: [0, 0, 0]
+ - # 12
+ processor_id: 0
+ proc_access_master: 0
+ proc_access_secondary: [0, 0, 0]
+ - # 13
+ processor_id: 0
+ proc_access_master: 0
+ proc_access_secondary: [0, 0, 0]
+ - # 14
+ processor_id: 0
+ proc_access_master: 0
+ proc_access_secondary: [0, 0, 0]
+ - # 15
+ processor_id: 0
+ proc_access_master: 0
+ proc_access_secondary: [0, 0, 0]
+ - # 16
+ processor_id: 0
+ proc_access_master: 0
+ proc_access_secondary: [0, 0, 0]
+ - # 17
+ processor_id: 0
+ proc_access_master: 0
+ proc_access_secondary: [0, 0, 0]
+ - # 18
+ processor_id: 0
+ proc_access_master: 0
+ proc_access_secondary: [0, 0, 0]
+ - # 19
+ processor_id: 0
+ proc_access_master: 0
+ proc_access_secondary: [0, 0, 0]
+ - # 20
+ processor_id: 0
+ proc_access_master: 0
+ proc_access_secondary: [0, 0, 0]
+ - # 21
+ processor_id: 0
+ proc_access_master: 0
+ proc_access_secondary: [0, 0, 0]
+ - # 22
+ processor_id: 0
+ proc_access_master: 0
+ proc_access_secondary: [0, 0, 0]
+ - # 23
+ processor_id: 0
+ proc_access_master: 0
+ proc_access_secondary: [0, 0, 0]
+ - # 24
+ processor_id: 0
+ proc_access_master: 0
+ proc_access_secondary: [0, 0, 0]
+ - # 25
+ processor_id: 0
+ proc_access_master: 0
+ proc_access_secondary: [0, 0, 0]
+ - # 26
+ processor_id: 0
+ proc_access_master: 0
+ proc_access_secondary: [0, 0, 0]
+ - # 27
+ processor_id: 0
+ proc_access_master: 0
+ proc_access_secondary: [0, 0, 0]
+ - # 28
+ processor_id: 0
+ proc_access_master: 0
+ proc_access_secondary: [0, 0, 0]
+ - # 29
+ processor_id: 0
+ proc_access_master: 0
+ proc_access_secondary: [0, 0, 0]
+ - # 30
+ processor_id: 0
+ proc_access_master: 0
+ proc_access_secondary: [0, 0, 0]
+ - # 31
+ processor_id: 0
+ proc_access_master: 0
+ proc_access_secondary: [0, 0, 0]
+ - # 32
+ processor_id: 0
+ proc_access_master: 0
+ proc_access_secondary: [0, 0, 0]
+ host_hierarchy:
+ subhdr:
+ magic: 0x8D27
+ size: 68
+ host_hierarchy_entries:
+ - # 1
+ host_id: 0
+ supervisor_host_id: 0
+ - # 2
+ host_id: 0
+ supervisor_host_id: 0
+ - # 3
+ host_id: 0
+ supervisor_host_id: 0
+ - # 4
+ host_id: 0
+ supervisor_host_id: 0
+ - # 5
+ host_id: 0
+ supervisor_host_id: 0
+ - # 6
+ host_id: 0
+ supervisor_host_id: 0
+ - # 7
+ host_id: 0
+ supervisor_host_id: 0
+ - # 8
+ host_id: 0
+ supervisor_host_id: 0
+ - # 9
+ host_id: 0
+ supervisor_host_id: 0
+ - # 10
+ host_id: 0
+ supervisor_host_id: 0
+ - # 11
+ host_id: 0
+ supervisor_host_id: 0
+ - # 12
+ host_id: 0
+ supervisor_host_id: 0
+ - # 13
+ host_id: 0
+ supervisor_host_id: 0
+ - # 14
+ host_id: 0
+ supervisor_host_id: 0
+ - # 15
+ host_id: 0
+ supervisor_host_id: 0
+ - # 16
+ host_id: 0
+ supervisor_host_id: 0
+ - # 17
+ host_id: 0
+ supervisor_host_id: 0
+ - # 18
+ host_id: 0
+ supervisor_host_id: 0
+ - # 19
+ host_id: 0
+ supervisor_host_id: 0
+ - # 20
+ host_id: 0
+ supervisor_host_id: 0
+ - # 21
+ host_id: 0
+ supervisor_host_id: 0
+ - # 22
+ host_id: 0
+ supervisor_host_id: 0
+ - # 23
+ host_id: 0
+ supervisor_host_id: 0
+ - # 24
+ host_id: 0
+ supervisor_host_id: 0
+ - # 25
+ host_id: 0
+ supervisor_host_id: 0
+ - # 26
+ host_id: 0
+ supervisor_host_id: 0
+ - # 27
+ host_id: 0
+ supervisor_host_id: 0
+ - # 28
+ host_id: 0
+ supervisor_host_id: 0
+ - # 29
+ host_id: 0
+ supervisor_host_id: 0
+ - # 30
+ host_id: 0
+ supervisor_host_id: 0
+ - # 31
+ host_id: 0
+ supervisor_host_id: 0
+ - # 32
+ host_id: 0
+ supervisor_host_id: 0
+ otp_config:
+ subhdr:
+ magic: 0x4081
+ size: 69
+ otp_entry:
+ - # 1
+ host_id: 10
+ host_perms: 2
+ - # 2
+ host_id: 10
+ host_perms: 2
+ - # 3
+ host_id: 10
+ host_perms: 2
+ - # 4
+ host_id: 10
+ host_perms: 2
+ - # 5
+ host_id: 10
+ host_perms: 2
+ - # 6
+ host_id: 10
+ host_perms: 2
+ - # 7
+ host_id: 10
+ host_perms: 2
+ - # 8
+ host_id: 10
+ host_perms: 2
+ - # 9
+ host_id: 10
+ host_perms: 2
+ - # 10
+ host_id: 10
+ host_perms: 2
+ - # 11
+ host_id: 10
+ host_perms: 2
+ - # 12
+ host_id: 10
+ host_perms: 2
+ - # 13
+ host_id: 10
+ host_perms: 2
+ - # 14
+ host_id: 10
+ host_perms: 2
+ - # 15
+ host_id: 10
+ host_perms: 2
+ - # 16
+ host_id: 10
+ host_perms: 2
+ - # 17
+ host_id: 10
+ host_perms: 2
+ - # 18
+ host_id: 10
+ host_perms: 2
+ - # 19
+ host_id: 10
+ host_perms: 2
+ - # 20
+ host_id: 10
+ host_perms: 2
+ - # 21
+ host_id: 10
+ host_perms: 2
+ - # 22
+ host_id: 10
+ host_perms: 2
+ - # 23
+ host_id: 10
+ host_perms: 2
+ - # 24
+ host_id: 10
+ host_perms: 2
+ - # 25
+ host_id: 10
+ host_perms: 2
+ - # 26
+ host_id: 10
+ host_perms: 2
+ - # 27
+ host_id: 10
+ host_perms: 2
+ - # 28
+ host_id: 10
+ host_perms: 2
+ - # 29
+ host_id: 10
+ host_perms: 2
+ - # 30
+ host_id: 10
+ host_perms: 2
+ - # 31
+ host_id: 10
+ host_perms: 2
+ - # 32
+ host_id: 10
+ host_perms: 2
+ write_host_id: 10
+ dkek_config:
+ subhdr:
+ magic: 0x5170
+ size: 12
+ allowed_hosts: [128, 0, 0, 0]
+ allow_dkek_export_tisci: 0x5A
+ rsvd: [0, 0, 0]
+ sa2ul_cfg:
+ subhdr:
+ magic: 0x0
+ size: 0
+ auth_resource_owner: 0
+ enable_saul_psil_global_config_writes: 0x0
+ rsvd: [0, 0]
+ sec_dbg_config:
+ subhdr:
+ magic: 0x42AF
+ size: 16
+ allow_jtag_unlock: 0x5A
+ allow_wildcard_unlock: 0x5A
+ allowed_debug_level_rsvd: 0
+ rsvd: 0
+ min_cert_rev: 0x0
+ jtag_unlock_hosts: [0, 0, 0, 0]
+ sec_handover_cfg:
+ subhdr:
+ magic: 0x0
+ size: 10
+ handover_msg_sender: 0
+ handover_to_host_id: 0
+ rsvd: [0, 0, 0, 0]
--
2.54.0
^ permalink raw reply related [flat|nested] 21+ messages in thread* Re: [PATCH v3 06/11] board: ti: am62lx: add initial board files
2026-08-04 0:09 ` [PATCH v3 06/11] board: ti: am62lx: add initial board files Bryan Brattlof
@ 2026-08-04 11:14 ` Anshul Dalal
0 siblings, 0 replies; 21+ messages in thread
From: Anshul Dalal @ 2026-08-04 11:14 UTC (permalink / raw)
To: Bryan Brattlof, u-boot
Cc: Peng Fan, Tom Rini, Dan Carpenter, Anshul Dalal, Simon Glass,
Alper Nebi Yasak, Ilias Apalodimas, Aristo Chen, Udit Kumar,
Andrew Davis, Daniel Golle, Johan Jonker, Vignesh Raghavendra,
Paresh Bhagat, Swamil Jain, Neha Malcom Francis, Shiva Tripathi,
Apurva Nandan, Chintan Vankar, Francesco Dolcini, Marek Vasut,
Siddharth Vadapalli, Hrushikesh Salunke, Manorit Chawdhry
On Tue Aug 4, 2026 at 5:39 AM IST, Bryan Brattlof wrote:
> Add the initial board files to support the AM62L3-SK reference boards
> for basic boot via SD and MMC
>
> Tested-by: Anshul Dalal <anshuld@ti.com>
> Signed-off-by: Bryan Brattlof <bb@ti.com>
Reviewed-by: Anshul Dalal <anshuld@ti.com>
^ permalink raw reply [flat|nested] 21+ messages in thread
* [PATCH v3 07/11] arm: dts: k3-am62lx: Add binman support
2026-08-04 0:09 [PATCH v3 00/11] arm: mach-k3: introduce basic support for the AM62L Bryan Brattlof
` (5 preceding siblings ...)
2026-08-04 0:09 ` [PATCH v3 06/11] board: ti: am62lx: add initial board files Bryan Brattlof
@ 2026-08-04 0:09 ` Bryan Brattlof
2026-08-04 11:20 ` Anshul Dalal
2026-08-04 0:09 ` [PATCH v3 08/11] configs: am62lx_evm: add initial defconfig Bryan Brattlof
` (3 subsequent siblings)
10 siblings, 1 reply; 21+ messages in thread
From: Bryan Brattlof @ 2026-08-04 0:09 UTC (permalink / raw)
To: u-boot
Cc: Peng Fan, Tom Rini, Dan Carpenter, Anshul Dalal, Simon Glass,
Alper Nebi Yasak, Bryan Brattlof, Ilias Apalodimas, Aristo Chen,
Udit Kumar, Andrew Davis, Daniel Golle, Johan Jonker,
Vignesh Raghavendra, Paresh Bhagat, Swamil Jain,
Neha Malcom Francis, Shiva Tripathi, Apurva Nandan,
Chintan Vankar, Francesco Dolcini, Marek Vasut,
Siddharth Vadapalli, Hrushikesh Salunke, Manorit Chawdhry
From: Vignesh Raghavendra <vigneshr@ti.com>
Add the initial configuration to build the boot binaries for the AM62L
family of devices
Tested-by: Anshul Dalal <anshuld@ti.com>
Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
Signed-off-by: Bryan Brattlof <bb@ti.com>
---
Changes in v2:
- Removed bootph from scmi{} node
- Removed signatures from u-boot fit image
- Link to v1: https://lore.kernel.org/r/20260717-am62lx-v1-0-b9830633afb8@ti.com
---
arch/arm/dts/k3-am62l3-evm-binman.dtsi | 218 +++++++++++++++++++++++++++++++++
arch/arm/dts/k3-am62l3-evm-u-boot.dtsi | 12 ++
arch/arm/mach-k3/Kconfig | 21 ++++
3 files changed, 251 insertions(+)
diff --git a/arch/arm/dts/k3-am62l3-evm-binman.dtsi b/arch/arm/dts/k3-am62l3-evm-binman.dtsi
new file mode 100644
index 000000000000..3f7e2097e521
--- /dev/null
+++ b/arch/arm/dts/k3-am62l3-evm-binman.dtsi
@@ -0,0 +1,218 @@
+// SPDX-License-Identifier: GPL-2.0-only or MIT
+/*
+ * Copyright (C) 2026 Texas Instruments Incorporated - https://www.ti.com/
+ */
+
+/ {
+ binman: binman {
+ multiple-images;
+ };
+};
+
+&binman {
+ custMpk {
+ filename = "custMpk.pem";
+
+ custmpk_pem: blob-ext {
+ filename = "arch/arm/mach-k3/keys/custMpk.pem";
+ };
+ };
+
+ custMpk-crt {
+ filename = "custMpk.crt";
+
+ custmpk_crt: blob-ext {
+ filename = "arch/arm/mach-k3/keys/custMpk.crt";
+ };
+ };
+
+ custMpk-key {
+ filename = "custMpk.key";
+
+ custmpk_key: blob-ext {
+ filename = "arch/arm/mach-k3/keys/custMpk.key";
+ };
+ };
+
+ board-cfg {
+ filename = "board-cfg.bin";
+
+ bcfg_yaml: ti-board-config {
+ config = "board-cfg.yaml";
+ schema = "arch/arm/mach-k3/am62lx/schema.yaml";
+ };
+ };
+
+ sec-cfg {
+ filename = "sec-cfg.bin";
+
+ sec_yaml: ti-board-config {
+ config = "sec-cfg.yaml";
+ schema = "arch/arm/mach-k3/am62lx/schema.yaml";
+ };
+ };
+
+ combined-tifs-cfg {
+ filename = "combined-tifs-cfg.bin";
+
+ ti-board-config {
+ bcfg_yaml_tifs: board-cfg {
+ config = "board-cfg.yaml";
+ schema = "arch/arm/mach-k3/am62lx/schema.yaml";
+ };
+
+ sec_yaml_tifs: sec-cfg {
+ config = "sec-cfg.yaml";
+ schema = "arch/arm/mach-k3/am62lx/schema.yaml";
+ };
+ };
+ };
+
+ tiboot3.bin {
+ filename = "tiboot3.bin";
+
+ ti-secure-rom {
+ content = <&bl1>, <&tifs_enc>, <&tifs_data>, <&tifs_cert>;
+ combined;
+ sysfw-inner-cert;
+ keyfile = "custMpk.pem";
+ sw-rev = <1>;
+ content-sbl = <&bl1>;
+ content-sysfw = <&tifs_enc>;
+ content-sysfw-data = <&tifs_data>;
+ content-sysfw-inner-cert = <&tifs_cert>;
+ load = <0x70800000>;
+ load-sysfw = <CONFIG_K3_TIFS_LOAD_ADDR>;
+ load-sysfw-data = <CONFIG_K3_TIFS_DATA_LOAD_ADDR>;
+ core-opts = <160>;
+ };
+
+ bl1: atf-bl1 {
+ };
+
+ tifs_enc: tifs-enc.bin {
+ filename = "ti-sysfw/ti-fs-firmware-am62lx-hs-enc.bin";
+ type = "blob-ext";
+ };
+
+ tifs_data: sysfw-data.bin {
+ filename = "combined-tifs-cfg.bin";
+ type = "blob-ext";
+ };
+
+ tifs_cert: tifs-cert.bin {
+ filename = "ti-sysfw/ti-fs-firmware-am62lx-hs-cert.bin";
+ type = "blob-ext";
+ };
+ };
+
+ tispl.bin {
+ filename = "tispl.bin";
+
+ ti-secure-rom {
+ content = <&atf>, <&tifs_enc2>, <&tifs_data2>,
+ <&tifs_cert2>, <&tee>, <&spl>;
+ combined;
+ sysfw-inner-cert;
+ dm-data;
+ keyfile = "custMpk.pem";
+ sw-rev = <1>;
+ content-sbl = <&atf>;
+ content-tee = <&tee>;
+ content-sysfw = <&tifs_enc2>;
+ content-sysfw-data = <&tifs_data2>;
+ content-sysfw-inner-cert = <&tifs_cert2>;
+ content-dm-data = <&spl>;
+ load = <CONFIG_K3_ATF_LOAD_ADDR>;
+ load-sysfw = <CONFIG_K3_TIFS_LOAD_ADDR>;
+ load-sysfw-data = <CONFIG_K3_TIFS_DATA_LOAD_ADDR>;
+ load-dm-data = <CONFIG_SPL_TEXT_BASE>;
+ load-tee = <CONFIG_K3_OPTEE_LOAD_ADDR>;
+ };
+
+ atf: atf-bl31 {
+ };
+
+ tifs_enc2: tifs-enc2.bin {
+ filename = "ti-sysfw/ti-fs-firmware-am62lx-hs-enc.bin";
+ type = "blob-ext";
+ };
+
+ tifs_data2: sysfw-data2.bin {
+ filename = "combined-tifs-cfg.bin";
+ type = "blob-ext";
+ };
+
+ tifs_cert2: tifs-cert2.bin {
+ filename = "ti-sysfw/ti-fs-firmware-am62lx-hs-cert.bin";
+ type = "blob-ext";
+ };
+
+ tee: tee-os {
+ };
+
+ spl: section {
+ u-boot-spl-nodtb {
+ };
+
+ u-boot-spl-pubkey-dtb {
+ algo = "sha512,rsa4096";
+ required = "conf";
+ key-name-hint = "custMpk";
+ };
+ };
+ };
+
+ u-boot.img {
+ filename = "u-boot.img";
+ pad-byte = <0xff>;
+
+ fit {
+ description = "U-Boot fitImage for AM62Lx SK";
+
+ images {
+ uboot {
+ description = "U-Boot for AM62Lx SK";
+ type = "firmware";
+ os = "u-boot";
+ arch = "arm";
+ compression = "none";
+ load = <CONFIG_TEXT_BASE>;
+
+ blob {
+ filename = "u-boot-nodtb.bin";
+ };
+
+ hash {
+ algo = "sha512";
+ };
+ };
+
+ fdt-0 {
+ description = "k3-am62lx-evm";
+ type = "flat_dt";
+ arch = "arm";
+ compression = "none";
+
+ u-boot-dtb {
+ };
+
+ hash {
+ algo = "sha512";
+ };
+ };
+ };
+
+ configurations {
+ default = "conf-0";
+
+ conf-0 {
+ description = "k3-am62lx-evm";
+ firmware = "uboot";
+ loadables = "uboot";
+ fdt = "fdt-0";
+ };
+ };
+ };
+ };
+};
diff --git a/arch/arm/dts/k3-am62l3-evm-u-boot.dtsi b/arch/arm/dts/k3-am62l3-evm-u-boot.dtsi
new file mode 100644
index 000000000000..d48b478b89c4
--- /dev/null
+++ b/arch/arm/dts/k3-am62l3-evm-u-boot.dtsi
@@ -0,0 +1,12 @@
+// SPDX-License-Identifier: GPL-2.0
+/*
+ * Copyright (C) 2026 Texas Instruments Incorporated - https://www.ti.com/
+ */
+
+#include "k3-am62l3-evm-binman.dtsi"
+
+/ {
+ aliases {
+ mmc1 = &sdhci1;
+ };
+};
diff --git a/arch/arm/mach-k3/Kconfig b/arch/arm/mach-k3/Kconfig
index 8249fc97bc93..02f82364777d 100644
--- a/arch/arm/mach-k3/Kconfig
+++ b/arch/arm/mach-k3/Kconfig
@@ -129,6 +129,26 @@ config K3_EARLY_CONS_IDX
Use this option to set the index of the serial device to be used
for the early console during SPL execution.
+config K3_TIFS_LOAD_ADDR
+ hex "Load address of TI's Foundational Security (TIFS) firmware"
+ default 0x40000
+ help
+ The load address for TI's Foundation Security firmware. This value is
+ used to build the x509 certificate to tell boot ROM where to place the
+ TIFS firmware in memory.
+
+ Unless you know what you're doing. Do not change this value.
+
+config K3_TIFS_DATA_LOAD_ADDR
+ hex "Load address of TIFS configuration data"
+ default 0x6c000
+ help
+ The load address for TI's Foundation Security configuration data. This
+ value is used to build the x509 certificate to tell ROM where to place
+ the TIFS firmware.
+
+ Unless you know what you're doing. Do not change this value.
+
config K3_ATF_LOAD_ADDR
hex "Load address of ATF image"
default 0x80000000 if (SOC_K3_AM625 || SOC_K3_AM62A7 || SOC_K3_AM62P5 || SOC_K3_J722S || SOC_K3_AM62L3)
@@ -149,6 +169,7 @@ config K3_ATF_RESERVED_SIZE
config K3_OPTEE_LOAD_ADDR
hex "Load address of OPTEE image"
+ default 0x80200000 if SOC_K3_AM62L3
default 0x9e800000
help
The load address for the OPTEE image. This value defaults to 0x9e800000
--
2.54.0
^ permalink raw reply related [flat|nested] 21+ messages in thread* Re: [PATCH v3 07/11] arm: dts: k3-am62lx: Add binman support
2026-08-04 0:09 ` [PATCH v3 07/11] arm: dts: k3-am62lx: Add binman support Bryan Brattlof
@ 2026-08-04 11:20 ` Anshul Dalal
0 siblings, 0 replies; 21+ messages in thread
From: Anshul Dalal @ 2026-08-04 11:20 UTC (permalink / raw)
To: Bryan Brattlof, u-boot
Cc: Peng Fan, Tom Rini, Dan Carpenter, Anshul Dalal, Simon Glass,
Alper Nebi Yasak, Ilias Apalodimas, Aristo Chen, Udit Kumar,
Andrew Davis, Daniel Golle, Johan Jonker, Vignesh Raghavendra,
Paresh Bhagat, Swamil Jain, Neha Malcom Francis, Shiva Tripathi,
Apurva Nandan, Chintan Vankar, Francesco Dolcini, Marek Vasut,
Siddharth Vadapalli, Hrushikesh Salunke, Manorit Chawdhry
On Tue Aug 4, 2026 at 5:39 AM IST, Bryan Brattlof wrote:
> From: Vignesh Raghavendra <vigneshr@ti.com>
>
> Add the initial configuration to build the boot binaries for the AM62L
> family of devices
>
> Tested-by: Anshul Dalal <anshuld@ti.com>
> Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
> Signed-off-by: Bryan Brattlof <bb@ti.com>
Reviewed-by: Anshul Dalal <anshuld@ti.com>
^ permalink raw reply [flat|nested] 21+ messages in thread
* [PATCH v3 08/11] configs: am62lx_evm: add initial defconfig
2026-08-04 0:09 [PATCH v3 00/11] arm: mach-k3: introduce basic support for the AM62L Bryan Brattlof
` (6 preceding siblings ...)
2026-08-04 0:09 ` [PATCH v3 07/11] arm: dts: k3-am62lx: Add binman support Bryan Brattlof
@ 2026-08-04 0:09 ` Bryan Brattlof
2026-08-04 11:56 ` Anshul Dalal
2026-08-04 0:09 ` [PATCH v3 09/11] doc: ti: k3: fix pygments warning parsing device-tree Bryan Brattlof
` (2 subsequent siblings)
10 siblings, 1 reply; 21+ messages in thread
From: Bryan Brattlof @ 2026-08-04 0:09 UTC (permalink / raw)
To: u-boot
Cc: Peng Fan, Tom Rini, Dan Carpenter, Anshul Dalal, Simon Glass,
Alper Nebi Yasak, Bryan Brattlof, Ilias Apalodimas, Aristo Chen,
Udit Kumar, Andrew Davis, Daniel Golle, Johan Jonker,
Vignesh Raghavendra, Paresh Bhagat, Swamil Jain,
Neha Malcom Francis, Shiva Tripathi, Apurva Nandan,
Chintan Vankar, Francesco Dolcini, Marek Vasut,
Siddharth Vadapalli, Hrushikesh Salunke, Manorit Chawdhry
Add the initial minimum configuration needed to boot the AM62L3-SK
reference boards.
Tested-by: Anshul Dalal <anshuld@ti.com>
Signed-off-by: Bryan Brattlof <bb@ti.com>
---
Changes in v2:
- removed options used for fit image signing
- Link to v1: https://lore.kernel.org/r/20260717-am62lx-v1-0-b9830633afb8@ti.com
---
configs/am62lx_evm_defconfig | 139 +++++++++++++++++++++++++++++++++++++++++++
1 file changed, 139 insertions(+)
diff --git a/configs/am62lx_evm_defconfig b/configs/am62lx_evm_defconfig
new file mode 100644
index 000000000000..2db07b508c2a
--- /dev/null
+++ b/configs/am62lx_evm_defconfig
@@ -0,0 +1,139 @@
+CONFIG_ARM=y
+CONFIG_ARCH_K3=y
+CONFIG_TEXT_BASE=0x84000000
+CONFIG_SYS_MALLOC_F_LEN=0x8000
+CONFIG_TI_COMMON_CMD_OPTIONS=y
+CONFIG_SPL_GPIO=y
+CONFIG_SPL_LIBCOMMON_SUPPORT=y
+CONFIG_SOC_K3_AM62L3=y
+CONFIG_TARGET_AM62L3_EVM=y
+CONFIG_HAS_CUSTOM_SYS_INIT_SP_ADDR=y
+CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0x82b80000
+CONFIG_SF_DEFAULT_SPEED=25000000
+CONFIG_DM_GPIO=y
+CONFIG_DEFAULT_DEVICE_TREE="ti/k3-am62l3-evm"
+CONFIG_OF_LIBFDT_OVERLAY=y
+CONFIG_DM_RESET=y
+CONFIG_SPL_MMC=y
+CONFIG_SPL_SERIAL=y
+CONFIG_SPL_STACK_R_ADDR=0x85000000
+CONFIG_SPL_TEXT_BASE=0x82000000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x82c80000
+CONFIG_SPL_BSS_MAX_SIZE=0x80000
+CONFIG_SPL_STACK_R=y
+CONFIG_SYS_BOOTM_LEN=0x800000
+CONFIG_SYS_LOAD_ADDR=0x84000000
+CONFIG_SPL_SIZE_LIMIT=0x50000
+CONFIG_SPL_SIZE_LIMIT_PROVIDE_STACK=0x800
+CONFIG_SPL_FS_FAT=y
+CONFIG_SPL_LIBDISK_SUPPORT=y
+# CONFIG_PSCI_RESET is not set
+# CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_EFI_SET_TIME=y
+CONFIG_SPL_LOAD_FIT_ADDRESS=0x83000000
+CONFIG_BOOTSTD_FULL=y
+# CONFIG_BOARD_INIT is not set
+CONFIG_SPL_MAX_SIZE=0x58000
+CONFIG_SPL_SYS_REPORT_STACK_F_USAGE=y
+# CONFIG_SPL_BINMAN_SYMBOLS is not set
+CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+CONFIG_SPL_SYS_MMCSD_RAW_MODE=y
+CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x1400
+CONFIG_SPL_DMA=y
+CONFIG_SPL_ENV_SUPPORT=y
+CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot.img"
+CONFIG_SPL_I2C=y
+CONFIG_SPL_DM_MAILBOX=y
+CONFIG_SPL_POWER_DOMAIN=y
+CONFIG_SPL_RAM_DEVICE=y
+CONFIG_SPL_YMODEM_SUPPORT=y
+CONFIG_CMD_BOOTEFI_SELFTEST=y
+CONFIG_CMD_NVEDIT_EFI=y
+CONFIG_CMD_USB_MASS_STORAGE=y
+CONFIG_CMD_EFIDEBUG=y
+CONFIG_OF_CONTROL=y
+CONFIG_SPL_OF_CONTROL=y
+CONFIG_NET_RANDOM_ETHADDR=y
+CONFIG_SPL_DM=y
+CONFIG_SPL_DM_DEVICE_REMOVE=y
+CONFIG_SPL_DM_SEQ_ALIAS=y
+CONFIG_SPL_OF_TRANSLATE=y
+CONFIG_CLK=y
+CONFIG_SPL_CLK=y
+CONFIG_DFU_MMC=y
+CONFIG_DFU_RAM=y
+CONFIG_SYS_DFU_DATA_BUF_SIZE=0x40000
+CONFIG_SYS_DFU_MAX_FILE_SIZE=0x800000
+CONFIG_DMA_CHANNELS=y
+CONFIG_TI_K3_NAVSS_UDMA=y
+# CONFIG_SCMI_AGENT_OPTEE is not set
+CONFIG_SPL_DM_GPIO_LOOKUP_LABEL=y
+CONFIG_DA8XX_GPIO=y
+CONFIG_DM_PCA953X=y
+CONFIG_SPL_DM_PCA953X=y
+CONFIG_DM_I2C=y
+CONFIG_SYS_I2C_OMAP24XX=y
+CONFIG_DM_MAILBOX=y
+CONFIG_K3_SEC_PROXY=y
+CONFIG_SUPPORT_EMMC_BOOT=y
+CONFIG_MMC_IO_VOLTAGE=y
+CONFIG_SPL_MMC_IO_VOLTAGE=y
+CONFIG_MMC_UHS_SUPPORT=y
+CONFIG_SPL_MMC_UHS_SUPPORT=y
+CONFIG_MMC_HS200_SUPPORT=y
+CONFIG_SPL_MMC_HS200_SUPPORT=y
+CONFIG_MMC_SDHCI=y
+CONFIG_MMC_SDHCI_ADMA=y
+CONFIG_SPL_MMC_SDHCI_ADMA=y
+CONFIG_MMC_SDHCI_AM654=y
+CONFIG_MTD=y
+CONFIG_DM_SPI_FLASH=y
+CONFIG_SPI_FLASH_SFDP_SUPPORT=y
+CONFIG_SPI_FLASH_SOFT_RESET=y
+CONFIG_SPI_FLASH_SOFT_RESET_ON_BOOT=y
+CONFIG_SPI_FLASH_SPANSION=y
+CONFIG_SPI_FLASH_S28HX_T=y
+CONFIG_SPI_FLASH_STMICRO=y
+CONFIG_SPI_FLASH_MT35XU=y
+CONFIG_TI_AM65_CPSW_NUSS=y
+CONFIG_PHY_TI_DP83867=y
+CONFIG_PHY_FIXED=y
+CONFIG_PHY=y
+CONFIG_PINCTRL=y
+CONFIG_SPL_PINCTRL=y
+CONFIG_PINCTRL_SINGLE=y
+CONFIG_POWER_DOMAIN=y
+CONFIG_DM_REGULATOR=y
+CONFIG_SPL_DM_REGULATOR=y
+CONFIG_DM_REGULATOR_FIXED=y
+CONFIG_SPL_DM_REGULATOR_FIXED=y
+CONFIG_DM_RTC=y
+CONFIG_RTC_EMULATION=y
+CONFIG_DM_SERIAL=y
+CONFIG_SOC_DEVICE=y
+CONFIG_SOC_DEVICE_TI_K3=y
+CONFIG_SOC_TI=y
+CONFIG_SPI=y
+CONFIG_DM_SPI=y
+CONFIG_CADENCE_QSPI=y
+CONFIG_SYSRESET=y
+CONFIG_SPL_SYSRESET=y
+CONFIG_USB=y
+CONFIG_DM_USB_GADGET=y
+CONFIG_SPL_DM_USB_GADGET=y
+CONFIG_USB_XHCI_HCD=y
+CONFIG_USB_DWC3=y
+CONFIG_USB_DWC3_GENERIC=y
+CONFIG_SPL_USB_DWC3_GENERIC=y
+CONFIG_SPL_USB_DWC3_AM62=y
+CONFIG_USB_DWC3_AM62=y
+CONFIG_USB_GADGET=y
+CONFIG_SPL_USB_GADGET=y
+CONFIG_USB_GADGET_MANUFACTURER="Texas Instruments"
+CONFIG_USB_GADGET_VENDOR_NUM=0x0451
+CONFIG_USB_GADGET_PRODUCT_NUM=0x6165
+CONFIG_USB_GADGET_DOWNLOAD=y
+CONFIG_SPL_DFU=y
+CONFIG_FS_FAT_MAX_CLUSTSIZE=16384
+# CONFIG_TOOLS_MKEFICAPSULE is not set
--
2.54.0
^ permalink raw reply related [flat|nested] 21+ messages in thread* Re: [PATCH v3 08/11] configs: am62lx_evm: add initial defconfig
2026-08-04 0:09 ` [PATCH v3 08/11] configs: am62lx_evm: add initial defconfig Bryan Brattlof
@ 2026-08-04 11:56 ` Anshul Dalal
2026-08-04 19:10 ` Bryan Brattlof
0 siblings, 1 reply; 21+ messages in thread
From: Anshul Dalal @ 2026-08-04 11:56 UTC (permalink / raw)
To: Bryan Brattlof, u-boot
Cc: Peng Fan, Tom Rini, Dan Carpenter, Anshul Dalal, Simon Glass,
Alper Nebi Yasak, Ilias Apalodimas, Aristo Chen, Udit Kumar,
Andrew Davis, Daniel Golle, Johan Jonker, Vignesh Raghavendra,
Paresh Bhagat, Swamil Jain, Neha Malcom Francis, Shiva Tripathi,
Apurva Nandan, Chintan Vankar, Francesco Dolcini, Marek Vasut,
Siddharth Vadapalli, Hrushikesh Salunke, Manorit Chawdhry
On Tue Aug 4, 2026 at 5:39 AM IST, Bryan Brattlof wrote:
> Add the initial minimum configuration needed to boot the AM62L3-SK
> reference boards.
>
> Tested-by: Anshul Dalal <anshuld@ti.com>
> Signed-off-by: Bryan Brattlof <bb@ti.com>
> ---
> Changes in v2:
> - removed options used for fit image signing
> - Link to v1: https://lore.kernel.org/r/20260717-am62lx-v1-0-b9830633afb8@ti.com
> ---
> configs/am62lx_evm_defconfig | 139 +++++++++++++++++++++++++++++++++++++++++++
> 1 file changed, 139 insertions(+)
>
> diff --git a/configs/am62lx_evm_defconfig b/configs/am62lx_evm_defconfig
> new file mode 100644
> index 000000000000..2db07b508c2a
> --- /dev/null
> +++ b/configs/am62lx_evm_defconfig
> @@ -0,0 +1,139 @@
> +CONFIG_ARM=y
> +CONFIG_ARCH_K3=y
> +CONFIG_TEXT_BASE=0x84000000
> +CONFIG_SYS_MALLOC_F_LEN=0x8000
> +CONFIG_TI_COMMON_CMD_OPTIONS=y
> +CONFIG_SPL_GPIO=y
> +CONFIG_SPL_LIBCOMMON_SUPPORT=y
> +CONFIG_SOC_K3_AM62L3=y
> +CONFIG_TARGET_AM62L3_EVM=y
> +CONFIG_HAS_CUSTOM_SYS_INIT_SP_ADDR=y
> +CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0x82b80000
> +CONFIG_SF_DEFAULT_SPEED=25000000
> +CONFIG_DM_GPIO=y
> +CONFIG_DEFAULT_DEVICE_TREE="ti/k3-am62l3-evm"
> +CONFIG_OF_LIBFDT_OVERLAY=y
> +CONFIG_DM_RESET=y
> +CONFIG_SPL_MMC=y
> +CONFIG_SPL_SERIAL=y
> +CONFIG_SPL_STACK_R_ADDR=0x85000000
> +CONFIG_SPL_TEXT_BASE=0x82000000
> +CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
> +CONFIG_SPL_BSS_START_ADDR=0x82c80000
> +CONFIG_SPL_BSS_MAX_SIZE=0x80000
> +CONFIG_SPL_STACK_R=y
> +CONFIG_SYS_BOOTM_LEN=0x800000
Currently using the command 'spl export' throws a "Image too large:
increase CONFIG_SYS_BOOTM_LEN" warning. Steps to reproduce:
=> load mmc 1:2 $loadaddr boot/fitImage
=> spl export fdt $loadaddr
Is there any reason we are keeping it this low? I think the default of
0x8000000 should be fine for us.
Rest of the patch looks good to me,
- Anshul
^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [PATCH v3 08/11] configs: am62lx_evm: add initial defconfig
2026-08-04 11:56 ` Anshul Dalal
@ 2026-08-04 19:10 ` Bryan Brattlof
0 siblings, 0 replies; 21+ messages in thread
From: Bryan Brattlof @ 2026-08-04 19:10 UTC (permalink / raw)
To: Anshul Dalal
Cc: u-boot, Peng Fan, Tom Rini, Dan Carpenter, Simon Glass,
Alper Nebi Yasak, Ilias Apalodimas, Aristo Chen, Udit Kumar,
Andrew Davis, Daniel Golle, Johan Jonker, Vignesh Raghavendra,
Paresh Bhagat, Swamil Jain, Neha Malcom Francis, Shiva Tripathi,
Apurva Nandan, Chintan Vankar, Francesco Dolcini, Marek Vasut,
Siddharth Vadapalli, Hrushikesh Salunke, Manorit Chawdhry
On August 4, 2026 thus sayeth Anshul Dalal:
> On Tue Aug 4, 2026 at 5:39 AM IST, Bryan Brattlof wrote:
> > Add the initial minimum configuration needed to boot the AM62L3-SK
> > reference boards.
> >
> > Tested-by: Anshul Dalal <anshuld@ti.com>
> > Signed-off-by: Bryan Brattlof <bb@ti.com>
> > ---
> > Changes in v2:
> > - removed options used for fit image signing
> > - Link to v1: https://lore.kernel.org/r/20260717-am62lx-v1-0-b9830633afb8@ti.com
> > ---
> > configs/am62lx_evm_defconfig | 139 +++++++++++++++++++++++++++++++++++++++++++
> > 1 file changed, 139 insertions(+)
> >
> > diff --git a/configs/am62lx_evm_defconfig b/configs/am62lx_evm_defconfig
> > new file mode 100644
> > index 000000000000..2db07b508c2a
> > --- /dev/null
> > +++ b/configs/am62lx_evm_defconfig
> > @@ -0,0 +1,139 @@
> > +CONFIG_ARM=y
> > +CONFIG_ARCH_K3=y
> > +CONFIG_TEXT_BASE=0x84000000
> > +CONFIG_SYS_MALLOC_F_LEN=0x8000
> > +CONFIG_TI_COMMON_CMD_OPTIONS=y
> > +CONFIG_SPL_GPIO=y
> > +CONFIG_SPL_LIBCOMMON_SUPPORT=y
> > +CONFIG_SOC_K3_AM62L3=y
> > +CONFIG_TARGET_AM62L3_EVM=y
> > +CONFIG_HAS_CUSTOM_SYS_INIT_SP_ADDR=y
> > +CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0x82b80000
> > +CONFIG_SF_DEFAULT_SPEED=25000000
> > +CONFIG_DM_GPIO=y
> > +CONFIG_DEFAULT_DEVICE_TREE="ti/k3-am62l3-evm"
> > +CONFIG_OF_LIBFDT_OVERLAY=y
> > +CONFIG_DM_RESET=y
> > +CONFIG_SPL_MMC=y
> > +CONFIG_SPL_SERIAL=y
> > +CONFIG_SPL_STACK_R_ADDR=0x85000000
> > +CONFIG_SPL_TEXT_BASE=0x82000000
> > +CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
> > +CONFIG_SPL_BSS_START_ADDR=0x82c80000
> > +CONFIG_SPL_BSS_MAX_SIZE=0x80000
> > +CONFIG_SPL_STACK_R=y
> > +CONFIG_SYS_BOOTM_LEN=0x800000
>
> Currently using the command 'spl export' throws a "Image too large:
> increase CONFIG_SYS_BOOTM_LEN" warning. Steps to reproduce:
>
> => load mmc 1:2 $loadaddr boot/fitImage
> => spl export fdt $loadaddr
>
> Is there any reason we are keeping it this low? I think the default of
> 0x8000000 should be fine for us.
Sure I can drop this.
~Bryan
^ permalink raw reply [flat|nested] 21+ messages in thread
* [PATCH v3 09/11] doc: ti: k3: fix pygments warning parsing device-tree
2026-08-04 0:09 [PATCH v3 00/11] arm: mach-k3: introduce basic support for the AM62L Bryan Brattlof
` (7 preceding siblings ...)
2026-08-04 0:09 ` [PATCH v3 08/11] configs: am62lx_evm: add initial defconfig Bryan Brattlof
@ 2026-08-04 0:09 ` Bryan Brattlof
2026-08-04 0:09 ` [PATCH v3 10/11] doc: board: ti: correct path to tcl scripts Bryan Brattlof
2026-08-04 0:09 ` [PATCH v3 11/11] doc: board: ti: am62lx_evm: add initial docs for the AM62L-EVM Bryan Brattlof
10 siblings, 0 replies; 21+ messages in thread
From: Bryan Brattlof @ 2026-08-04 0:09 UTC (permalink / raw)
To: u-boot
Cc: Peng Fan, Tom Rini, Dan Carpenter, Anshul Dalal, Simon Glass,
Alper Nebi Yasak, Bryan Brattlof, Ilias Apalodimas, Aristo Chen,
Udit Kumar, Andrew Davis, Daniel Golle, Johan Jonker,
Vignesh Raghavendra, Paresh Bhagat, Swamil Jain,
Neha Malcom Francis, Shiva Tripathi, Apurva Nandan,
Chintan Vankar, Francesco Dolcini, Marek Vasut,
Siddharth Vadapalli, Hrushikesh Salunke, Manorit Chawdhry
A warning is emitted when generating the FIT image examples because of
white-space and invalid node names. Fix them
Tested-by: Anshul Dalal <anshuld@ti.com>
Reviewed-by: Anshul Dalal <anshuld@ti.com>
Signed-off-by: Bryan Brattlof <bb@ti.com>
---
doc/board/ti/k3.rst | 38 +++++++++++++++++++++-----------------
1 file changed, 21 insertions(+), 17 deletions(-)
diff --git a/doc/board/ti/k3.rst b/doc/board/ti/k3.rst
index d3ecaf599094..b7b69949af16 100644
--- a/doc/board/ti/k3.rst
+++ b/doc/board/ti/k3.rst
@@ -466,25 +466,29 @@ choose any configuration at runtime to boot from.
.. code-block:: dts
- /dts-v1/;
+ / {
+ description = "FIT Image description";
+ #address-cells = <1>;
- / {
- description = "FIT Image description";
- #address-cells = <1>;
+ images {
+ image-1 {};
+ image-2 {};
+ fdt-1 {};
+ fdt-2 {};
+ };
- images {
- [image-1]
- [image-2]
- [fdt-1]
- [fdt-2]
- }
-
- configurations {
- default = <conf-1>
- [conf-1: image-1,fdt-1]
- [conf-2: image-2,fdt-1]
- }
- }
+ configurations {
+ default = <conf-1>
+ conf-1 {
+ image = "image-1";
+ fdt = "fdt-1";
+ };
+ conf-2 {
+ image = "image-2";
+ fdt = "fdt-1";
+ };
+ };
+ };
* Sample Images
--
2.54.0
^ permalink raw reply related [flat|nested] 21+ messages in thread* [PATCH v3 10/11] doc: board: ti: correct path to tcl scripts
2026-08-04 0:09 [PATCH v3 00/11] arm: mach-k3: introduce basic support for the AM62L Bryan Brattlof
` (8 preceding siblings ...)
2026-08-04 0:09 ` [PATCH v3 09/11] doc: ti: k3: fix pygments warning parsing device-tree Bryan Brattlof
@ 2026-08-04 0:09 ` Bryan Brattlof
2026-08-04 11:57 ` Anshul Dalal
2026-08-04 14:49 ` Andrew Davis
2026-08-04 0:09 ` [PATCH v3 11/11] doc: board: ti: am62lx_evm: add initial docs for the AM62L-EVM Bryan Brattlof
10 siblings, 2 replies; 21+ messages in thread
From: Bryan Brattlof @ 2026-08-04 0:09 UTC (permalink / raw)
To: u-boot
Cc: Peng Fan, Tom Rini, Dan Carpenter, Anshul Dalal, Simon Glass,
Alper Nebi Yasak, Bryan Brattlof, Ilias Apalodimas, Aristo Chen,
Udit Kumar, Andrew Davis, Daniel Golle, Johan Jonker,
Vignesh Raghavendra, Paresh Bhagat, Swamil Jain,
Neha Malcom Francis, Shiva Tripathi, Apurva Nandan,
Chintan Vankar, Francesco Dolcini, Marek Vasut,
Siddharth Vadapalli, Hrushikesh Salunke, Manorit Chawdhry
OpenOCD has moved where it has placed the tcl scripts for TI's reference
boards. Update their paths to the new locations.
Tested-by: Anshul Dalal <anshuld@ti.com>
Signed-off-by: Bryan Brattlof <bb@ti.com>
---
Changes in v3:
- Kept warning about which versions of OpenOCD have the tcl scripts
- Link to v2: https://lore.kernel.org/r/20260721-am62lx-v2-0-33ff580c267d@ti.com
---
doc/board/ti/am6254atl_sk.rst | 2 +-
doc/board/ti/am62ax_sk.rst | 2 +-
doc/board/ti/am62dx_evm.rst | 11 ++++++-----
doc/board/ti/am62px_sk.rst | 12 +++++-------
doc/board/ti/am62x_sk.rst | 2 +-
doc/board/ti/am64x_evm.rst | 24 ++++++++++++++++++++++++
doc/board/ti/am65x_evm.rst | 2 +-
doc/board/ti/j7200_evm.rst | 2 +-
doc/board/ti/j721e_evm.rst | 2 +-
doc/board/ti/j722s_evm.rst | 2 +-
doc/board/ti/j784s4_evm.rst | 2 +-
11 files changed, 43 insertions(+), 20 deletions(-)
diff --git a/doc/board/ti/am6254atl_sk.rst b/doc/board/ti/am6254atl_sk.rst
index 18a3520b39c7..0df058aee157 100644
--- a/doc/board/ti/am6254atl_sk.rst
+++ b/doc/board/ti/am6254atl_sk.rst
@@ -305,4 +305,4 @@ To start OpenOCD and connect to the board
.. prompt:: bash $
- openocd -f board/ti_am625evm.cfg
+ openocd -f board/ti/am625evm.cfg
diff --git a/doc/board/ti/am62ax_sk.rst b/doc/board/ti/am62ax_sk.rst
index 3453ed339e7f..b04bfc991ea0 100644
--- a/doc/board/ti/am62ax_sk.rst
+++ b/doc/board/ti/am62ax_sk.rst
@@ -435,4 +435,4 @@ To start OpenOCD and connect to the board
.. prompt:: bash
- openocd -f board/ti_am62a7evm.cfg
+ openocd -f board/ti/am62a7evm.cfg
diff --git a/doc/board/ti/am62dx_evm.rst b/doc/board/ti/am62dx_evm.rst
index 0d12e3ec1476..88071b3e69d9 100644
--- a/doc/board/ti/am62dx_evm.rst
+++ b/doc/board/ti/am62dx_evm.rst
@@ -237,10 +237,6 @@ detailed setup information.
.. warning::
- **AM62A**: OpenOCD support since August 2023 (git master)
-
- **AM62D**: Uses AM62A configuration (compatible due to same core architecture)
-
Until the next stable release of OpenOCD is available in your development
environment's distribution, it might be necessary to build OpenOCD `from the
source <https://github.com/openocd-org/openocd>`_.
@@ -253,4 +249,9 @@ To start OpenOCD and connect to the board
.. prompt:: bash
- openocd -f board/ti/am62a7evm.cfg
+ openocd -f board/ti/am62a7evm.cfg
+
+.. note::
+
+ The AM62D-EVM uses the same tcl configuration as the AM62A-SK due to
+ same core architecture.
diff --git a/doc/board/ti/am62px_sk.rst b/doc/board/ti/am62px_sk.rst
index 44dae4afc870..9d8b5ebf38fb 100644
--- a/doc/board/ti/am62px_sk.rst
+++ b/doc/board/ti/am62px_sk.rst
@@ -331,13 +331,11 @@ detailed setup information.
.. warning::
- **OpenOCD support after**: v0.12.0
+ **OpenOCD support after**: v0.12.0
- While support for the entire K3 generation including the am62xxx
- extended family was added before v0.12.0, the tcl scripts for the
- am62px have been accepted and will be available in the next release of
- OpenOCD. It may be necessary to build OpenOCD from source depending on
- the version your distribution has packaged.
+ Until the next stable release of OpenOCD is available in your development
+ environment's distribution, it might be necissary to build OpenOCD `from the
+ source <https://github.com/openocd-org/open ocd>`_.
.. include:: k3.rst
:start-after: .. k3_rst_include_start_openocd_connect_XDS110
@@ -347,4 +345,4 @@ To start OpenOCD and connect to the board
.. prompt:: bash
- openocd -f board/ti_am62pevm.cfg
+ openocd -f board/ti/am62pevm.cfg
diff --git a/doc/board/ti/am62x_sk.rst b/doc/board/ti/am62x_sk.rst
index ef9425035cb8..2e4923f7a7a1 100644
--- a/doc/board/ti/am62x_sk.rst
+++ b/doc/board/ti/am62x_sk.rst
@@ -867,4 +867,4 @@ To start OpenOCD and connect to the board
.. prompt:: bash $
- openocd -f board/ti_am625evm.cfg
+ openocd -f board/ti/am625evm.cfg
diff --git a/doc/board/ti/am64x_evm.rst b/doc/board/ti/am64x_evm.rst
index 65c4c456528c..6f02a1eef883 100644
--- a/doc/board/ti/am64x_evm.rst
+++ b/doc/board/ti/am64x_evm.rst
@@ -227,3 +227,27 @@ https://www.ti.com/lit/pdf/spruim2 under the `Boot Mode Pins` section.
For SW2 and SW3, the switch state in the "ON" position = 1.
Boot bits on SK is reversed bits to the bootmode signals
+
+Debugging U-Boot
+----------------
+
+See :ref:`Common Debugging environment - OpenOCD<k3_rst_refer_openocd>`: for
+detailed setup information.
+
+.. warning::
+
+ **OpenOCD support after**: v0.12.0
+
+ Until the next stable release of OpenOCD is available in your development
+ environment's distribution, it might be necissary to build OpenOCD `from the
+ source <https://github.com/openocd-org/open ocd>`_.
+
+.. include:: k3.rst
+ :start-after: .. k3_rst_include_start_openocd_connect_XDS110
+ :end-before: .. k3_rst_include_end_openocd_connect_XDS110
+
+To start OpenOCD and connect to the board
+
+.. prompt:: bash
+
+ openocd -f board/ti/am642evm.cfg
diff --git a/doc/board/ti/am65x_evm.rst b/doc/board/ti/am65x_evm.rst
index 73ceef2e531c..5f75c01ec65a 100644
--- a/doc/board/ti/am65x_evm.rst
+++ b/doc/board/ti/am65x_evm.rst
@@ -321,4 +321,4 @@ To start OpenOCD and connect to the board
.. prompt:: bash $
- openocd -f board/ti_am654evm.cfg
+ openocd -f board/ti/am654evm.cfg
diff --git a/doc/board/ti/j7200_evm.rst b/doc/board/ti/j7200_evm.rst
index 4fd2aff83547..e5c29c2bbb7b 100644
--- a/doc/board/ti/j7200_evm.rst
+++ b/doc/board/ti/j7200_evm.rst
@@ -232,4 +232,4 @@ To start OpenOCD and connect to the board
.. prompt:: bash $
- openocd -f board/ti_j7200evm.cfg
+ openocd -f board/ti/j7200evm.cfg
diff --git a/doc/board/ti/j721e_evm.rst b/doc/board/ti/j721e_evm.rst
index 41c8d4c72a8d..c3f3736e625a 100644
--- a/doc/board/ti/j721e_evm.rst
+++ b/doc/board/ti/j721e_evm.rst
@@ -261,4 +261,4 @@ To start OpenOCD and connect to the board
.. prompt:: bash $
- openocd -f board/ti_j721eevm.cfg
+ openocd -f board/ti/j721evm.cfg
diff --git a/doc/board/ti/j722s_evm.rst b/doc/board/ti/j722s_evm.rst
index 4b5cf0275940..3d11271613c7 100644
--- a/doc/board/ti/j722s_evm.rst
+++ b/doc/board/ti/j722s_evm.rst
@@ -255,4 +255,4 @@ To start OpenOCD and connect to the board
.. prompt:: bash
- openocd -f board/ti_j722sevm.cfg
+ openocd -f board/ti/j722sevm.cfg
diff --git a/doc/board/ti/j784s4_evm.rst b/doc/board/ti/j784s4_evm.rst
index ec82228ab908..54b4b6031f0c 100644
--- a/doc/board/ti/j784s4_evm.rst
+++ b/doc/board/ti/j784s4_evm.rst
@@ -663,4 +663,4 @@ following.
.. prompt:: bash
- openocd -f board/ti_j784s4evm.cfg
+ openocd -f board/ti/j784s4evm.cfg
--
2.54.0
^ permalink raw reply related [flat|nested] 21+ messages in thread* Re: [PATCH v3 10/11] doc: board: ti: correct path to tcl scripts
2026-08-04 0:09 ` [PATCH v3 10/11] doc: board: ti: correct path to tcl scripts Bryan Brattlof
@ 2026-08-04 11:57 ` Anshul Dalal
2026-08-04 14:49 ` Andrew Davis
1 sibling, 0 replies; 21+ messages in thread
From: Anshul Dalal @ 2026-08-04 11:57 UTC (permalink / raw)
To: Bryan Brattlof, u-boot
Cc: Peng Fan, Tom Rini, Dan Carpenter, Anshul Dalal, Simon Glass,
Alper Nebi Yasak, Ilias Apalodimas, Aristo Chen, Udit Kumar,
Andrew Davis, Daniel Golle, Johan Jonker, Vignesh Raghavendra,
Paresh Bhagat, Swamil Jain, Neha Malcom Francis, Shiva Tripathi,
Apurva Nandan, Chintan Vankar, Francesco Dolcini, Marek Vasut,
Siddharth Vadapalli, Hrushikesh Salunke, Manorit Chawdhry
On Tue Aug 4, 2026 at 5:39 AM IST, Bryan Brattlof wrote:
> OpenOCD has moved where it has placed the tcl scripts for TI's reference
> boards. Update their paths to the new locations.
>
> Tested-by: Anshul Dalal <anshuld@ti.com>
> Signed-off-by: Bryan Brattlof <bb@ti.com>
Reviewed-by: Anshul Dalal <anshuld@ti.com>
^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [PATCH v3 10/11] doc: board: ti: correct path to tcl scripts
2026-08-04 0:09 ` [PATCH v3 10/11] doc: board: ti: correct path to tcl scripts Bryan Brattlof
2026-08-04 11:57 ` Anshul Dalal
@ 2026-08-04 14:49 ` Andrew Davis
2026-08-04 19:08 ` Bryan Brattlof
1 sibling, 1 reply; 21+ messages in thread
From: Andrew Davis @ 2026-08-04 14:49 UTC (permalink / raw)
To: Bryan Brattlof, u-boot
Cc: Peng Fan, Tom Rini, Dan Carpenter, Anshul Dalal, Simon Glass,
Alper Nebi Yasak, Ilias Apalodimas, Aristo Chen, Udit Kumar,
Daniel Golle, Johan Jonker, Vignesh Raghavendra, Paresh Bhagat,
Swamil Jain, Neha Malcom Francis, Shiva Tripathi, Apurva Nandan,
Chintan Vankar, Francesco Dolcini, Marek Vasut,
Siddharth Vadapalli, Hrushikesh Salunke, Manorit Chawdhry
On 8/3/26 7:09 PM, Bryan Brattlof wrote:
> OpenOCD has moved where it has placed the tcl scripts for TI's reference
> boards. Update their paths to the new locations.
>
> Tested-by: Anshul Dalal <anshuld@ti.com>
> Signed-off-by: Bryan Brattlof <bb@ti.com>
> ---
> Changes in v3:
> - Kept warning about which versions of OpenOCD have the tcl scripts
> - Link to v2: https://lore.kernel.org/r/20260721-am62lx-v2-0-33ff580c267d@ti.com
> ---
> doc/board/ti/am6254atl_sk.rst | 2 +-
> doc/board/ti/am62ax_sk.rst | 2 +-
> doc/board/ti/am62dx_evm.rst | 11 ++++++-----
> doc/board/ti/am62px_sk.rst | 12 +++++-------
> doc/board/ti/am62x_sk.rst | 2 +-
> doc/board/ti/am64x_evm.rst | 24 ++++++++++++++++++++++++
> doc/board/ti/am65x_evm.rst | 2 +-
> doc/board/ti/j7200_evm.rst | 2 +-
> doc/board/ti/j721e_evm.rst | 2 +-
> doc/board/ti/j722s_evm.rst | 2 +-
> doc/board/ti/j784s4_evm.rst | 2 +-
> 11 files changed, 43 insertions(+), 20 deletions(-)
>
> diff --git a/doc/board/ti/am6254atl_sk.rst b/doc/board/ti/am6254atl_sk.rst
> index 18a3520b39c7..0df058aee157 100644
> --- a/doc/board/ti/am6254atl_sk.rst
> +++ b/doc/board/ti/am6254atl_sk.rst
> @@ -305,4 +305,4 @@ To start OpenOCD and connect to the board
>
> .. prompt:: bash $
>
> - openocd -f board/ti_am625evm.cfg
> + openocd -f board/ti/am625evm.cfg
> diff --git a/doc/board/ti/am62ax_sk.rst b/doc/board/ti/am62ax_sk.rst
> index 3453ed339e7f..b04bfc991ea0 100644
> --- a/doc/board/ti/am62ax_sk.rst
> +++ b/doc/board/ti/am62ax_sk.rst
> @@ -435,4 +435,4 @@ To start OpenOCD and connect to the board
>
> .. prompt:: bash
>
> - openocd -f board/ti_am62a7evm.cfg
> + openocd -f board/ti/am62a7evm.cfg
> diff --git a/doc/board/ti/am62dx_evm.rst b/doc/board/ti/am62dx_evm.rst
> index 0d12e3ec1476..88071b3e69d9 100644
> --- a/doc/board/ti/am62dx_evm.rst
> +++ b/doc/board/ti/am62dx_evm.rst
> @@ -237,10 +237,6 @@ detailed setup information.
>
> .. warning::
>
> - **AM62A**: OpenOCD support since August 2023 (git master)
> -
> - **AM62D**: Uses AM62A configuration (compatible due to same core architecture)
> -
> Until the next stable release of OpenOCD is available in your development
> environment's distribution, it might be necessary to build OpenOCD `from the
> source <https://github.com/openocd-org/openocd>`_.
> @@ -253,4 +249,9 @@ To start OpenOCD and connect to the board
>
> .. prompt:: bash
>
> - openocd -f board/ti/am62a7evm.cfg
> + openocd -f board/ti/am62a7evm.cfg
> +
> +.. note::
> +
> + The AM62D-EVM uses the same tcl configuration as the AM62A-SK due to
> + same core architecture.
> diff --git a/doc/board/ti/am62px_sk.rst b/doc/board/ti/am62px_sk.rst
> index 44dae4afc870..9d8b5ebf38fb 100644
> --- a/doc/board/ti/am62px_sk.rst
> +++ b/doc/board/ti/am62px_sk.rst
> @@ -331,13 +331,11 @@ detailed setup information.
>
> .. warning::
>
> - **OpenOCD support after**: v0.12.0
> + **OpenOCD support after**: v0.12.0
>
> - While support for the entire K3 generation including the am62xxx
> - extended family was added before v0.12.0, the tcl scripts for the
> - am62px have been accepted and will be available in the next release of
> - OpenOCD. It may be necessary to build OpenOCD from source depending on
> - the version your distribution has packaged.
> + Until the next stable release of OpenOCD is available in your development
> + environment's distribution, it might be necissary to build OpenOCD `from the
s/necissary/necessary
Otherwise everything else looks good,
Acked-by: Andrew Davis <afd@ti.com>
> + source <https://github.com/openocd-org/open ocd>`_.
>
> .. include:: k3.rst
> :start-after: .. k3_rst_include_start_openocd_connect_XDS110
> @@ -347,4 +345,4 @@ To start OpenOCD and connect to the board
>
> .. prompt:: bash
>
> - openocd -f board/ti_am62pevm.cfg
> + openocd -f board/ti/am62pevm.cfg
> diff --git a/doc/board/ti/am62x_sk.rst b/doc/board/ti/am62x_sk.rst
> index ef9425035cb8..2e4923f7a7a1 100644
> --- a/doc/board/ti/am62x_sk.rst
> +++ b/doc/board/ti/am62x_sk.rst
> @@ -867,4 +867,4 @@ To start OpenOCD and connect to the board
>
> .. prompt:: bash $
>
> - openocd -f board/ti_am625evm.cfg
> + openocd -f board/ti/am625evm.cfg
> diff --git a/doc/board/ti/am64x_evm.rst b/doc/board/ti/am64x_evm.rst
> index 65c4c456528c..6f02a1eef883 100644
> --- a/doc/board/ti/am64x_evm.rst
> +++ b/doc/board/ti/am64x_evm.rst
> @@ -227,3 +227,27 @@ https://www.ti.com/lit/pdf/spruim2 under the `Boot Mode Pins` section.
>
> For SW2 and SW3, the switch state in the "ON" position = 1.
> Boot bits on SK is reversed bits to the bootmode signals
> +
> +Debugging U-Boot
> +----------------
> +
> +See :ref:`Common Debugging environment - OpenOCD<k3_rst_refer_openocd>`: for
> +detailed setup information.
> +
> +.. warning::
> +
> + **OpenOCD support after**: v0.12.0
> +
> + Until the next stable release of OpenOCD is available in your development
> + environment's distribution, it might be necissary to build OpenOCD `from the
> + source <https://github.com/openocd-org/open ocd>`_.
> +
> +.. include:: k3.rst
> + :start-after: .. k3_rst_include_start_openocd_connect_XDS110
> + :end-before: .. k3_rst_include_end_openocd_connect_XDS110
> +
> +To start OpenOCD and connect to the board
> +
> +.. prompt:: bash
> +
> + openocd -f board/ti/am642evm.cfg
> diff --git a/doc/board/ti/am65x_evm.rst b/doc/board/ti/am65x_evm.rst
> index 73ceef2e531c..5f75c01ec65a 100644
> --- a/doc/board/ti/am65x_evm.rst
> +++ b/doc/board/ti/am65x_evm.rst
> @@ -321,4 +321,4 @@ To start OpenOCD and connect to the board
>
> .. prompt:: bash $
>
> - openocd -f board/ti_am654evm.cfg
> + openocd -f board/ti/am654evm.cfg
> diff --git a/doc/board/ti/j7200_evm.rst b/doc/board/ti/j7200_evm.rst
> index 4fd2aff83547..e5c29c2bbb7b 100644
> --- a/doc/board/ti/j7200_evm.rst
> +++ b/doc/board/ti/j7200_evm.rst
> @@ -232,4 +232,4 @@ To start OpenOCD and connect to the board
>
> .. prompt:: bash $
>
> - openocd -f board/ti_j7200evm.cfg
> + openocd -f board/ti/j7200evm.cfg
> diff --git a/doc/board/ti/j721e_evm.rst b/doc/board/ti/j721e_evm.rst
> index 41c8d4c72a8d..c3f3736e625a 100644
> --- a/doc/board/ti/j721e_evm.rst
> +++ b/doc/board/ti/j721e_evm.rst
> @@ -261,4 +261,4 @@ To start OpenOCD and connect to the board
>
> .. prompt:: bash $
>
> - openocd -f board/ti_j721eevm.cfg
> + openocd -f board/ti/j721evm.cfg
> diff --git a/doc/board/ti/j722s_evm.rst b/doc/board/ti/j722s_evm.rst
> index 4b5cf0275940..3d11271613c7 100644
> --- a/doc/board/ti/j722s_evm.rst
> +++ b/doc/board/ti/j722s_evm.rst
> @@ -255,4 +255,4 @@ To start OpenOCD and connect to the board
>
> .. prompt:: bash
>
> - openocd -f board/ti_j722sevm.cfg
> + openocd -f board/ti/j722sevm.cfg
> diff --git a/doc/board/ti/j784s4_evm.rst b/doc/board/ti/j784s4_evm.rst
> index ec82228ab908..54b4b6031f0c 100644
> --- a/doc/board/ti/j784s4_evm.rst
> +++ b/doc/board/ti/j784s4_evm.rst
> @@ -663,4 +663,4 @@ following.
>
> .. prompt:: bash
>
> - openocd -f board/ti_j784s4evm.cfg
> + openocd -f board/ti/j784s4evm.cfg
>
^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [PATCH v3 10/11] doc: board: ti: correct path to tcl scripts
2026-08-04 14:49 ` Andrew Davis
@ 2026-08-04 19:08 ` Bryan Brattlof
0 siblings, 0 replies; 21+ messages in thread
From: Bryan Brattlof @ 2026-08-04 19:08 UTC (permalink / raw)
To: Andrew Davis
Cc: u-boot, Peng Fan, Tom Rini, Dan Carpenter, Anshul Dalal,
Simon Glass, Alper Nebi Yasak, Ilias Apalodimas, Aristo Chen,
Udit Kumar, Daniel Golle, Johan Jonker, Vignesh Raghavendra,
Paresh Bhagat, Swamil Jain, Neha Malcom Francis, Shiva Tripathi,
Apurva Nandan, Chintan Vankar, Francesco Dolcini, Marek Vasut,
Siddharth Vadapalli, Hrushikesh Salunke, Manorit Chawdhry
On August 4, 2026 thus sayeth Andrew Davis:
> On 8/3/26 7:09 PM, Bryan Brattlof wrote:
> > OpenOCD has moved where it has placed the tcl scripts for TI's reference
> > boards. Update their paths to the new locations.
> >
> > Tested-by: Anshul Dalal <anshuld@ti.com>
> > Signed-off-by: Bryan Brattlof <bb@ti.com>
> > ---
> > Changes in v3:
> > - Kept warning about which versions of OpenOCD have the tcl scripts
> > - Link to v2: https://lore.kernel.org/r/20260721-am62lx-v2-0-33ff580c267d@ti.com
> > ---
> > doc/board/ti/am6254atl_sk.rst | 2 +-
> > doc/board/ti/am62ax_sk.rst | 2 +-
> > doc/board/ti/am62dx_evm.rst | 11 ++++++-----
> > doc/board/ti/am62px_sk.rst | 12 +++++-------
> > doc/board/ti/am62x_sk.rst | 2 +-
> > doc/board/ti/am64x_evm.rst | 24 ++++++++++++++++++++++++
> > doc/board/ti/am65x_evm.rst | 2 +-
> > doc/board/ti/j7200_evm.rst | 2 +-
> > doc/board/ti/j721e_evm.rst | 2 +-
> > doc/board/ti/j722s_evm.rst | 2 +-
> > doc/board/ti/j784s4_evm.rst | 2 +-
> > 11 files changed, 43 insertions(+), 20 deletions(-)
> >
> > diff --git a/doc/board/ti/am6254atl_sk.rst b/doc/board/ti/am6254atl_sk.rst
> > index 18a3520b39c7..0df058aee157 100644
> > --- a/doc/board/ti/am6254atl_sk.rst
> > +++ b/doc/board/ti/am6254atl_sk.rst
> > @@ -305,4 +305,4 @@ To start OpenOCD and connect to the board
> > .. prompt:: bash $
> > - openocd -f board/ti_am625evm.cfg
> > + openocd -f board/ti/am625evm.cfg
> > diff --git a/doc/board/ti/am62ax_sk.rst b/doc/board/ti/am62ax_sk.rst
> > index 3453ed339e7f..b04bfc991ea0 100644
> > --- a/doc/board/ti/am62ax_sk.rst
> > +++ b/doc/board/ti/am62ax_sk.rst
> > @@ -435,4 +435,4 @@ To start OpenOCD and connect to the board
> > .. prompt:: bash
> > - openocd -f board/ti_am62a7evm.cfg
> > + openocd -f board/ti/am62a7evm.cfg
> > diff --git a/doc/board/ti/am62dx_evm.rst b/doc/board/ti/am62dx_evm.rst
> > index 0d12e3ec1476..88071b3e69d9 100644
> > --- a/doc/board/ti/am62dx_evm.rst
> > +++ b/doc/board/ti/am62dx_evm.rst
> > @@ -237,10 +237,6 @@ detailed setup information.
> > .. warning::
> > - **AM62A**: OpenOCD support since August 2023 (git master)
> > -
> > - **AM62D**: Uses AM62A configuration (compatible due to same core architecture)
> > -
> > Until the next stable release of OpenOCD is available in your development
> > environment's distribution, it might be necessary to build OpenOCD `from the
> > source <https://github.com/openocd-org/openocd>`_.
> > @@ -253,4 +249,9 @@ To start OpenOCD and connect to the board
> > .. prompt:: bash
> > - openocd -f board/ti/am62a7evm.cfg
> > + openocd -f board/ti/am62a7evm.cfg
> > +
> > +.. note::
> > +
> > + The AM62D-EVM uses the same tcl configuration as the AM62A-SK due to
> > + same core architecture.
> > diff --git a/doc/board/ti/am62px_sk.rst b/doc/board/ti/am62px_sk.rst
> > index 44dae4afc870..9d8b5ebf38fb 100644
> > --- a/doc/board/ti/am62px_sk.rst
> > +++ b/doc/board/ti/am62px_sk.rst
> > @@ -331,13 +331,11 @@ detailed setup information.
> > .. warning::
> > - **OpenOCD support after**: v0.12.0
> > + **OpenOCD support after**: v0.12.0
> > - While support for the entire K3 generation including the am62xxx
> > - extended family was added before v0.12.0, the tcl scripts for the
> > - am62px have been accepted and will be available in the next release of
> > - OpenOCD. It may be necessary to build OpenOCD from source depending on
> > - the version your distribution has packaged.
> > + Until the next stable release of OpenOCD is available in your development
> > + environment's distribution, it might be necissary to build OpenOCD `from the
>
> s/necissary/necessary
>
Nice
> Otherwise everything else looks good,
>
> Acked-by: Andrew Davis <afd@ti.com>
~Bryan
^ permalink raw reply [flat|nested] 21+ messages in thread
* [PATCH v3 11/11] doc: board: ti: am62lx_evm: add initial docs for the AM62L-EVM
2026-08-04 0:09 [PATCH v3 00/11] arm: mach-k3: introduce basic support for the AM62L Bryan Brattlof
` (9 preceding siblings ...)
2026-08-04 0:09 ` [PATCH v3 10/11] doc: board: ti: correct path to tcl scripts Bryan Brattlof
@ 2026-08-04 0:09 ` Bryan Brattlof
2026-08-04 11:29 ` Anshul Dalal
10 siblings, 1 reply; 21+ messages in thread
From: Bryan Brattlof @ 2026-08-04 0:09 UTC (permalink / raw)
To: u-boot
Cc: Peng Fan, Tom Rini, Dan Carpenter, Anshul Dalal, Simon Glass,
Alper Nebi Yasak, Bryan Brattlof, Ilias Apalodimas, Aristo Chen,
Udit Kumar, Andrew Davis, Daniel Golle, Johan Jonker,
Vignesh Raghavendra, Paresh Bhagat, Swamil Jain,
Neha Malcom Francis, Shiva Tripathi, Apurva Nandan,
Chintan Vankar, Francesco Dolcini, Marek Vasut,
Siddharth Vadapalli, Hrushikesh Salunke, Manorit Chawdhry
Add the initial documentation on the bootflow, build, and deubgging
procedures along with the relevant links to more information about the
AM62Lx processor and the reference board.
Tested-by: Anshul Dalal <anshuld@ti.com>
Signed-off-by: Bryan Brattlof <bb@ti.com>
---
Changes in v3:
- Used CROSS_COMPILE=$CC64 to align with other board docs
- Link to v2: https://lore.kernel.org/r/20260721-am62lx-v2-0-33ff580c267d@ti.com
---
doc/board/ti/am62lx_evm.rst | 222 ++++++++++
doc/board/ti/img/am62lx_boot_diagram_phase1.svg | 450 ++++++++++++++++++++
doc/board/ti/img/am62lx_boot_diagram_phase2.svg | 525 ++++++++++++++++++++++++
doc/board/ti/img/am62lx_tiboot3.bin.svg | 170 ++++++++
doc/board/ti/img/am62lx_tispl.bin.svg | 222 ++++++++++
doc/board/ti/img/am62lx_u-boot.img.svg | 143 +++++++
doc/board/ti/k3.rst | 1 +
7 files changed, 1733 insertions(+)
diff --git a/doc/board/ti/am62lx_evm.rst b/doc/board/ti/am62lx_evm.rst
new file mode 100644
index 000000000000..84fdc1e710e1
--- /dev/null
+++ b/doc/board/ti/am62lx_evm.rst
@@ -0,0 +1,222 @@
+.. SPDX-License-Identifier: GPL-2.0+ OR BSD-3-Clause
+.. sectionauthor:: Bryan Brattlof <bb@ti.com>
+
+AM62Lx Platforms
+================
+
+The AM62L is a lite, low power and performance optimized family
+of application processors that are built for Linux application
+development. The AM62L is well suited for a wide range of
+general-purpose applications with scalable ARM Cortex-A53 core
+performance and embedded features such as: Multimedia DSI/DPI support,
+integrated ADC on chip, advanced lower power management modes, and
+extensive security options for IP protection with the built-in security
+features.
+
+The AM62L is a general purpose processor, however some of the
+applications well suited for it include: Human Machine Interfaces (HMI),
+Medical patient monitoring , Building automation, Smart secure gateways,
+Smart Thermostats, EV charging stations, Smart Metering, Solar energy
+and more.
+
+Some highlights of AM62L SoC are:
+
+- Single to Dual 64-bit Arm® Cortex®-A53 microprocessor subsystem up to
+ 1.25GHz Integrated Giga-bit Ethernet switch supporting up to a total
+ of two external ports
+
+- 16-bit DDR Subsystem that supports LPDDR4, DDR4 memory types.
+
+- Display support: 1x display support over MIPI DSI (4 lanes DPHY) or
+ DPI (24-bit RGB LVCMOS)
+
+- Multiple low power modes support, ex: Deep sleep and Standby
+
+- Support for secure boot, Trusted Execution Environment (TEE) &
+ Cryptographic Acceleration
+
+For more information check out our `Technical Reference Manual (TRM)`_.
+
+.. _Technical Reference Manual (TRM): https://www.ti.com/lit/ug/sprujb4/sprujb4.pdf
+
+
+Boot Flow:
+----------
+
+The AM62Lx SoCs deviate significantly from the typical boot-flow of the
+other Sitara or Jacinto class of SoCs.
+
+The first CPU released on power on will be the Security Management
+Subsystem (SMS) MCU to first secure the device like all other K3 SoCs.
+However because the lack of any MCU cores the boot ROM is located on one
+of the A53 cores which is responsible for loading TI's root-of-trust
+firmware (TIFS) along with a BL1 image generated from the
+ARM-Trusted-Firmware repository. The BL1 image is responsible for
+initializing the debug console, the DDR controller, and speeding up the
+A53 to it's maximum allowable.
+
+Once the BL1 is done, it will send a message back to the SMS core to
+reset and begin the second boot phase.
+
+.. image:: img/am62lx_boot_diagram_phase1.svg
+ :alt: First phase of the AM62L boot flow
+
+For the second boot phase, with DDR active ROM can now load the larger
+images contained in the tispl.bin (or whatever filename or offset was
+configured during the BL1 boot phase) which contains TI's root-of-trust
+firmware (TIFS) along with OP-TEE, TF-A's BL31 and U-Boot SPL images to
+initialize the root-of-trust, and the TrustZone and normal world for the
+A53s.
+
+From there the U-Boot SPL will load and authenticate U-Boot proper.
+
+.. image:: img/am62lx_boot_diagram_phase2.svg
+ :alt: Second phase of the AM62L boot flow
+
+Sources:
+--------
+
+.. include:: ../ti/k3.rst
+ :start-after: .. k3_rst_include_start_boot_sources
+ :end-before: .. k3_rst_include_end_boot_sources
+
+Build procedure:
+----------------
+
+0. Setup the environment variables:
+
+ .. include:: ../ti/k3.rst
+ :start-after: .. k3_rst_include_start_common_env_vars_desc
+ :end-before: .. k3_rst_include_end_common_env_vars_desc
+
+ .. include:: ../ti/k3.rst
+ :start-after: .. k3_rst_include_start_board_env_vars_desc
+ :end-before: .. k3_rst_include_end_board_env_vars_desc
+
+ Set the variables corresponding to this platform:
+
+ .. include:: ../ti/k3.rst
+ :start-after: .. k3_rst_include_start_common_env_vars_defn
+ :end-before: .. k3_rst_include_end_common_env_vars_defn
+
+ .. prompt:: bash $
+
+ export UBOOT_CFG_CORTEXA=am62lx_evm_defconfig
+ export TFA_BOARD=am62lx-evm
+ export OPTEE_PLATFORM=k3-am62lx
+
+1. Build Trusted Firmware-A:
+
+ More detailed porting and build guide can be found in the `TF-A
+ documentation`_ for all AM62L based platforms. For the AM62L-EVM the
+ build command will be:
+
+ .. prompt:: bash $
+
+ make CROSS_COMPILE=$CC64 \
+ ARCH=aarch64 \
+ PLAT=k3low \
+ TARGET_BOARD=$TFA_BOARD
+
+.. _TF-A documentation: https://trustedfirmware-a.readthedocs.io/en/latest/plat/ti-k3low-am62lx.html
+
+#. Build OP-TEE:
+
+ Depending on the application more build arguments may be needed. The
+ `OP-TEE documentation`_ has more information on this. The basic build
+ commands for the AM62L-EVM are:
+
+ .. prompt:: bash $
+
+ make CROSS_COMPILE=$CC32 \
+ CROSS_COMPILE64=$CC64 \
+ CFG_ARM64_core=y \
+ $OPTEE_EXTRA_ARGS \
+ PLATFORM=$OPTEE_PLATFORM
+
+.. _OP-TEE documentation: https://optee.readthedocs.io/en/latest/
+
+#. Build U-Boot:
+
+ .. prompt:: bash $
+
+ make $UBOOT_CFG_CORTEXA
+ make CROSS_COMPILE=$CC64 \
+ BINMAN_INDIRS="$LNX_FW_PATH" \
+ TEE="$OPTEE_PATH/out/arm-plat-k3/core/tee-raw.bin" \
+ BL1="$TFA_PATH/build/k3low/$TFA_BOARD/release/bl1.bin" \
+ BL31="$TFA_PATH/build/k3low/$TFA_BOARD/release/bl31.bin"
+
+Image formats:
+--------------
+
+The final images generated and needed for booting the AM62L are:
+
+- tiboot3.bin
+
+.. image:: img/am62lx_tiboot3.bin.svg
+ :alt: tiboot3.bin image format
+
+- tispl.bin
+
+.. image:: img/am62lx_tispl.bin.svg
+ :alt: tispl.bin image format
+
+- u-boot.img
+
+.. image:: img/am62lx_u-boot.img.svg
+ :alt: u-boot.img image format
+
+Switch Setting for Boot Mode
+----------------------------
+
+Boot Mode pins provide means to select the boot mode and options before the
+device is powered up. After every POR, they are the main source to populate
+the Boot Parameter Tables.
+
+The following table shows some common boot modes used on AM62L-EVM
+
+.. list-table::
+ :widths: 16 16 8 8
+ :header-rows: 1
+
+ * - Switch Label
+ - SW4: 12345678
+ - SW2: 1234
+ - SW3: 1234
+
+ * - EMMC
+ - 11010010
+ - 0000
+ - 0000
+
+ * - SD
+ - 11000010
+ - 0100
+ - 0000
+
+ * - UART
+ - 11011100
+ - 0000
+ - 0000
+
+ * - USB DFU
+ - 11001010
+ - 0000
+ - 0000
+
+Debugging U-Boot
+----------------
+
+See :ref:`Common Debugging environment - OpenOCD<k3_rst_refer_openocd>`: for
+detailed setup information.
+
+.. include:: k3.rst
+ :start-after: .. k3_rst_include_start_openocd_connect_XDS110
+ :end-before: .. k3_rst_include_end_openocd_connect_XDS110
+
+To start OpenOCD and connect to the board
+
+.. prompt:: bash
+
+ openocd -f board/ti/am62levm.cfg
diff --git a/doc/board/ti/img/am62lx_boot_diagram_phase1.svg b/doc/board/ti/img/am62lx_boot_diagram_phase1.svg
new file mode 100644
index 000000000000..fe10d1a253d8
--- /dev/null
+++ b/doc/board/ti/img/am62lx_boot_diagram_phase1.svg
@@ -0,0 +1,450 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ width="123.04372mm"
+ height="102.41046mm"
+ viewBox="0 0 123.04372 102.41046"
+ version="1.1"
+ id="svg1"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:svg="http://www.w3.org/2000/svg">
+ <defs
+ id="defs1">
+ <rect
+ x="138.88995"
+ y="89.244179"
+ width="82.705078"
+ height="34.694588"
+ id="rect9" />
+ <rect
+ x="138.88995"
+ y="89.244179"
+ width="83.540909"
+ height="29.679607"
+ id="rect9-9" />
+ </defs>
+ <g
+ id="layer1"
+ transform="translate(-3.2156586,-61.395067)"
+ style="display:inline">
+ <rect
+ style="fill:none;stroke:#000000;stroke-width:0.264583"
+ id="rect1-9"
+ width="1.9329573"
+ height="85.898857"
+ x="41.939594"
+ y="77.774384" />
+ <rect
+ style="fill:none;stroke:#000000;stroke-width:0.264583"
+ id="rect1-9-2"
+ width="1.9329573"
+ height="25.09384"
+ x="84.430481"
+ y="86.003517" />
+ <rect
+ style="fill:none;stroke:#000000;stroke-width:0.264583"
+ id="rect1-9-2-7"
+ width="1.9329573"
+ height="38.677994"
+ x="84.382317"
+ y="124.9362" />
+ <path
+ d="M 14.252899,77.754344 H 41.775385"
+ fill="none"
+ stroke="#000000"
+ stroke-miterlimit="10"
+ stroke-dasharray="3.175, 3.175"
+ pointer-events="stroke"
+ id="path272"
+ style="stroke-width:0.264583" />
+ <path
+ d="m 42.840209,71.544151 0.04093,6.233026"
+ fill="none"
+ stroke="#000000"
+ stroke-miterlimit="10"
+ stroke-dasharray="3.175, 3.175"
+ pointer-events="stroke"
+ id="path272-4"
+ style="display:inline;stroke-width:0.264583;stroke-dasharray:0.264583, 0.529166;stroke-dashoffset:0" />
+ <path
+ d="m 85.45604,71.406464 0.0087,14.680898"
+ fill="none"
+ stroke="#000000"
+ stroke-miterlimit="10"
+ stroke-dasharray="3.175, 3.175"
+ pointer-events="stroke"
+ id="path272-4-6"
+ style="display:inline;stroke-width:0.264583;stroke-dasharray:0.264583, 0.529166;stroke-dashoffset:0" />
+ <path
+ d="m 85.443487,111.04287 0.0036,13.97812"
+ fill="none"
+ stroke="#000000"
+ stroke-miterlimit="10"
+ stroke-dasharray="3.175, 3.175"
+ pointer-events="stroke"
+ id="path272-4-6-8"
+ style="display:inline;stroke-width:0.264583;stroke-dasharray:0.264583, 0.529166;stroke-dashoffset:0" />
+ <path
+ d="m 122.1225,64.792094 0.056,98.568876"
+ fill="none"
+ stroke="#000000"
+ stroke-miterlimit="10"
+ stroke-dasharray="3.175, 3.175"
+ pointer-events="stroke"
+ id="path272-4-6-4"
+ style="display:inline;fill:#d40000;stroke-width:0.264584;stroke-dasharray:0.264584, 0.529165;stroke-dashoffset:0" />
+ <g
+ id="g17"
+ transform="translate(-0.20732502,0.70490506)">
+ <rect
+ style="fill:#ffe6cc;fill-opacity:1;stroke:#d79b00;stroke-width:0.264582;stroke-opacity:1"
+ id="rect1"
+ width="16.069794"
+ height="8.8927412"
+ x="26.988451"
+ y="78.507072" />
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:4.23333px;line-height:0.9;font-family:sans-serif;-inkscape-font-specification:sans-serif;font-variant-ligatures:none;text-align:center;writing-mode:lr-tb;direction:ltr;text-anchor:middle;fill:#000000;stroke:none;stroke-width:0.264583"
+ x="34.991573"
+ y="84.456261"
+ id="text1"><tspan
+ id="tspan1"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:4.23333px;font-family:sans-serif;-inkscape-font-specification:sans-serif;fill:#000000;stroke:none;stroke-width:0.264583"
+ x="34.991573"
+ y="84.456261">ROM</tspan></text>
+ </g>
+ <g
+ id="g17-1"
+ transform="translate(58.456195,8.5590037)">
+ <rect
+ style="fill:#ffe6cc;fill-opacity:1;stroke:#d79b00;stroke-width:0.264582;stroke-opacity:1"
+ id="rect1-1"
+ width="16.069794"
+ height="8.8927412"
+ x="26.988451"
+ y="78.507072" />
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:4.23333px;line-height:0.9;font-family:sans-serif;-inkscape-font-specification:sans-serif;font-variant-ligatures:none;text-align:center;writing-mode:lr-tb;direction:ltr;text-anchor:middle;fill:#000000;stroke:none;stroke-width:0.264583"
+ x="34.991573"
+ y="84.456261"
+ id="text1-5"><tspan
+ id="tspan1-98"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:4.23333px;font-family:sans-serif;-inkscape-font-specification:sans-serif;fill:#000000;stroke:none;stroke-width:0.264583"
+ x="34.991573"
+ y="84.456261">ROM</tspan></text>
+ </g>
+ <g
+ id="g21"
+ transform="translate(0.30297529,12.998616)">
+ <g
+ id="g20"
+ transform="translate(-13.448192,1.681024)">
+ <rect
+ style="fill:#d5e8d4;fill-opacity:1;stroke:#82b366;stroke-width:0.264582;stroke-opacity:1"
+ id="rect1-1-0"
+ width="16.069794"
+ height="8.8927412"
+ x="98.597946"
+ y="111.78242" />
+ </g>
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:4.23333px;line-height:0.9;font-family:sans-serif;-inkscape-font-specification:sans-serif;font-variant-ligatures:none;text-align:center;writing-mode:lr-tb;direction:ltr;text-anchor:middle;fill:#000000;stroke:none;stroke-width:0.264583"
+ x="93.599792"
+ y="119.41312"
+ id="text1-5-4"><tspan
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:4.23333px;font-family:sans-serif;-inkscape-font-specification:sans-serif;fill:#000000;stroke:none;stroke-width:0.264583"
+ x="93.599792"
+ y="119.41312"
+ id="tspan19">BL1</tspan></text>
+ </g>
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:4.23333px;line-height:0.9;font-family:sans-serif;-inkscape-font-specification:sans-serif;font-variant-ligatures:none;text-align:center;writing-mode:lr-tb;direction:ltr;text-anchor:middle;fill:#000000;stroke:none;stroke-width:0.264583"
+ x="20.957556"
+ y="76.900803"
+ id="text1-8"><tspan
+ id="tspan1-9"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:4.23333px;font-family:sans-serif;-inkscape-font-specification:sans-serif;fill:#000000;stroke:none;stroke-width:0.264583"
+ x="20.957556"
+ y="76.900803">H/W Reset Release</tspan></text>
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:4.23333px;line-height:0.9;font-family:sans-serif;-inkscape-font-specification:sans-serif;font-variant-ligatures:none;text-align:center;writing-mode:lr-tb;direction:ltr;text-anchor:middle;fill:#000000;stroke:none;stroke-width:0.264583"
+ x="64.100334"
+ y="85.26165"
+ id="text1-8-2"><tspan
+ id="tspan1-9-9"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:4.23333px;font-family:sans-serif;-inkscape-font-specification:sans-serif;fill:#000000;stroke:none;stroke-width:0.264583"
+ x="64.100334"
+ y="85.26165">Release A53 ROM</tspan></text>
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:4.23333px;line-height:0.9;font-family:sans-serif;-inkscape-font-specification:sans-serif;font-variant-ligatures:none;text-align:center;writing-mode:lr-tb;direction:ltr;text-anchor:middle;fill:#000000;stroke:none;stroke-width:0.264583"
+ x="64.140884"
+ y="104.34003"
+ id="text1-8-2-6"><tspan
+ id="tspan1-9-9-9"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:4.23333px;font-family:sans-serif;-inkscape-font-specification:sans-serif;fill:#000000;stroke:none;stroke-width:0.264583"
+ x="64.140884"
+ y="104.34003">Authenticate</tspan><tspan
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:4.23333px;font-family:sans-serif;-inkscape-font-specification:sans-serif;fill:#000000;stroke:none;stroke-width:0.264583"
+ x="64.140884"
+ y="108.15002"
+ id="tspan10">tiboot3.bin</tspan></text>
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:4.23333px;line-height:0.9;font-family:sans-serif;-inkscape-font-specification:sans-serif;font-variant-ligatures:none;text-align:center;writing-mode:lr-tb;direction:ltr;text-anchor:middle;fill:#000000;stroke:none;stroke-width:0.264583"
+ x="63.962883"
+ y="119.40052"
+ id="text1-8-2-6-0"><tspan
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:4.23333px;font-family:sans-serif;-inkscape-font-specification:sans-serif;fill:#000000;stroke:none;stroke-width:0.264583"
+ x="63.962883"
+ y="119.40052"
+ id="tspan10-1">Reset A53 to</tspan><tspan
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:4.23333px;font-family:sans-serif;-inkscape-font-specification:sans-serif;fill:#000000;stroke:none;stroke-width:0.264583"
+ x="63.962883"
+ y="123.21052"
+ id="tspan16">BL1 Entry</tspan></text>
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:4.23333px;line-height:0.9;font-family:sans-serif;-inkscape-font-specification:sans-serif;font-variant-ligatures:none;text-align:center;writing-mode:lr-tb;direction:ltr;text-anchor:middle;fill:#000000;stroke:none;stroke-width:0.264583"
+ x="63.822987"
+ y="155.86008"
+ id="text1-8-2-6-0-9"><tspan
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:4.23333px;font-family:sans-serif;-inkscape-font-specification:sans-serif;fill:#000000;stroke:none;stroke-width:0.264583"
+ x="63.822987"
+ y="155.86008"
+ id="tspan10-1-6">BL1 Done</tspan><tspan
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:4.23333px;font-family:sans-serif;-inkscape-font-specification:sans-serif;fill:#000000;stroke:none;stroke-width:0.264583"
+ x="63.822987"
+ y="159.67007"
+ id="tspan15">Message</tspan></text>
+ <path
+ d="M 43.79186,86.012678 H 84.529679"
+ fill="none"
+ stroke="#000000"
+ stroke-miterlimit="10"
+ pointer-events="stroke"
+ id="path292"
+ style="stroke-width:0.264582" />
+ <rect
+ style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:0.264584;stroke-opacity:1"
+ id="rect8"
+ width="29.836563"
+ height="9.8913136"
+ x="88.656013"
+ y="97.899971"
+ ry="1.8797468"
+ rx="1.8797469" />
+ <rect
+ style="display:inline;fill:none;fill-opacity:1;stroke:#000000;stroke-width:0.264584;stroke-opacity:1"
+ id="rect8-7"
+ width="29.836563"
+ height="9.8913136"
+ x="70.63903"
+ y="61.527359"
+ ry="1.8797468"
+ rx="1.8797469" />
+ <rect
+ style="display:inline;fill:none;fill-opacity:1;stroke:#000000;stroke-width:0.264584;stroke-opacity:1"
+ id="rect8-7-9"
+ width="29.836563"
+ height="9.8913136"
+ x="27.875254"
+ y="61.689301"
+ ry="1.8797468"
+ rx="1.8797469" />
+ <rect
+ style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:0.264584;stroke-opacity:1"
+ id="rect8-31"
+ width="29.836563"
+ height="9.8913136"
+ x="88.697792"
+ y="137.6286"
+ ry="1.8797468"
+ rx="1.8797469" />
+ <rect
+ style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:0.264583;stroke-opacity:1"
+ id="rect8-3"
+ width="29.756132"
+ height="9.9170303"
+ x="10.461226"
+ y="112.1797"
+ ry="1.8797468"
+ rx="1.8797469" />
+ <text
+ xml:space="preserve"
+ transform="matrix(0.26458333,0,0,0.26458333,55.945023,75.710672)"
+ id="text8"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;line-height:0.9;font-family:sans-serif;-inkscape-font-specification:sans-serif;font-variant-ligatures:none;text-align:center;writing-mode:lr-tb;direction:ltr;white-space:pre;shape-inside:url(#rect9);display:inline;fill:#000000;fill-opacity:1;stroke:none;stroke-opacity:1"
+ x="0"
+ y="0"><tspan
+ x="162.65117"
+ y="101.24414"
+ id="tspan3">Load </tspan><tspan
+ x="143.97914"
+ y="115.64414"
+ id="tspan4">tiboot3.bin</tspan></text>
+ <text
+ xml:space="preserve"
+ transform="matrix(0.26458333,0,0,0.26458333,-22.357201,90.009926)"
+ id="text8-6"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;line-height:0.9;font-family:sans-serif;-inkscape-font-specification:sans-serif;font-variant-ligatures:none;text-align:center;writing-mode:lr-tb;direction:ltr;white-space:pre;shape-inside:url(#rect9-9);display:inline;fill:#000000;fill-opacity:1;stroke:none;stroke-opacity:1"
+ x="0"
+ y="0"><tspan
+ x="152.34912"
+ y="101.24414"
+ id="tspan5">Validate </tspan><tspan
+ x="144.39711"
+ y="115.64414"
+ id="tspan6">tiboot3.bin</tspan></text>
+ <path
+ d="m 41.982847,77.762613 -1.85208,0.92604 0.46302,-0.92604 -0.46302,-0.92604 z"
+ fill="#000000"
+ stroke="#000000"
+ stroke-miterlimit="10"
+ pointer-events="all"
+ id="path294"
+ style="stroke-width:0.264583" />
+ <path
+ d="m 84.45369,86.024357 -1.85208,0.92604 0.46302,-0.92604 -0.46302,-0.92604 z"
+ fill="#000000"
+ stroke="#000000"
+ stroke-miterlimit="10"
+ pointer-events="all"
+ id="path294-4"
+ style="stroke-width:0.264583" />
+ <g
+ id="g18"
+ transform="matrix(1.3039736,0,0,1,-13.367223,6.910834)"
+ style="stroke-width:0.875721">
+ <path
+ d="m 43.895114,102.59059 h 31.14238"
+ fill="none"
+ stroke="#000000"
+ stroke-miterlimit="10"
+ pointer-events="stroke"
+ id="path292-5"
+ style="stroke-width:0.231701" />
+ <path
+ d="m 44.052705,102.59467 1.85208,0.92604 -0.46302,-0.92604 0.46302,-0.92604 z"
+ fill="#000000"
+ stroke="#000000"
+ stroke-miterlimit="10"
+ pointer-events="all"
+ id="path294-8"
+ style="stroke-width:0.231701" />
+ </g>
+ <path
+ d="M 43.737375,124.94556 H 83.348064"
+ fill="none"
+ stroke="#000000"
+ stroke-miterlimit="10"
+ pointer-events="stroke"
+ id="path292-5-4"
+ style="stroke-width:0.264583" />
+ <path
+ d="m 84.175686,124.95576 -2.115358,0.92604 0.52884,-0.92604 -0.52884,-0.92604 z"
+ fill="#000000"
+ stroke="#000000"
+ stroke-miterlimit="10"
+ pointer-events="all"
+ id="path294-8-8"
+ style="stroke-width:0.264583" />
+ <path
+ d="m 122.19619,163.47482 -0.92604,-2.11535 0.92604,0.52884 0.92604,-0.52884 z"
+ fill="#000000"
+ stroke="#000000"
+ stroke-miterlimit="10"
+ pointer-events="all"
+ id="path294-8-8-9"
+ style="display:inline;stroke-width:0.264583" />
+ <g
+ id="g25"
+ transform="translate(0,-5.2916669)">
+ <path
+ d="M 43.847715,167.18481 H 84.499402"
+ fill="none"
+ stroke="#000000"
+ stroke-miterlimit="10"
+ pointer-events="stroke"
+ id="path292-5-4-1"
+ style="stroke-width:0.264583" />
+ <path
+ d="m 44.02991,167.15364 1.85208,0.92604 -0.46302,-0.92604 0.46302,-0.92604 z"
+ fill="#000000"
+ stroke="#000000"
+ stroke-miterlimit="10"
+ pointer-events="all"
+ id="path294-8-8-0"
+ style="stroke-width:0.264583" />
+ </g>
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:4.23333px;line-height:0.9;font-family:sans-serif;-inkscape-font-specification:sans-serif;font-variant-ligatures:none;text-align:center;writing-mode:lr-tb;direction:ltr;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.264583;stroke-opacity:1"
+ x="103.49282"
+ y="142.27876"
+ id="text12"><tspan
+ id="tspan12"
+ style="font-size:4.23333px;fill:#000000;stroke:none;stroke-width:0.264583"
+ x="103.49282"
+ y="142.27876">Debug Console</tspan><tspan
+ style="font-size:4.23333px;fill:#000000;stroke:none;stroke-width:0.264583"
+ x="103.49282"
+ y="146.08876"
+ id="tspan13">Init</tspan></text>
+ <rect
+ style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:0.264584;stroke-opacity:1"
+ id="rect8-2"
+ width="29.836563"
+ height="9.8913136"
+ x="88.51506"
+ y="149.61092"
+ ry="1.8797468"
+ rx="1.8797469" />
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:4.23333px;line-height:0.9;font-family:sans-serif;-inkscape-font-specification:sans-serif;font-variant-ligatures:none;text-align:center;writing-mode:lr-tb;direction:ltr;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.264583;stroke-opacity:1"
+ x="103.45767"
+ y="156.1178"
+ id="text14"><tspan
+ id="tspan14"
+ style="font-size:4.23333px;stroke-width:0.264583"
+ x="103.45767"
+ y="156.1178">DRAM Init</tspan></text>
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:4.23333px;line-height:0.9;font-family:sans-serif;-inkscape-font-specification:sans-serif;font-variant-ligatures:none;text-align:center;writing-mode:lr-tb;direction:ltr;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.264583;stroke-opacity:1"
+ x="85.482224"
+ y="68.033394"
+ id="text26"><tspan
+ id="tspan26"
+ style="fill:#000000;stroke:none;stroke-width:0.264583"
+ x="85.482224"
+ y="68.033394">Cortex A53</tspan></text>
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:4.23333px;line-height:0.9;font-family:sans-serif;-inkscape-font-specification:sans-serif;font-variant-ligatures:none;text-align:center;writing-mode:lr-tb;direction:ltr;text-anchor:middle;display:inline;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.264583;stroke-opacity:1"
+ x="42.888348"
+ y="67.920227"
+ id="text26-8"><tspan
+ id="tspan26-3"
+ style="fill:#000000;stroke:none;stroke-width:0.264583"
+ x="42.888348"
+ y="67.920227">SMS M4</tspan></text>
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:4.23333px;line-height:0.9;font-family:sans-serif;-inkscape-font-specification:sans-serif;font-variant-ligatures:none;text-align:center;writing-mode:vertical-lr;direction:ltr;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.264583;stroke-dasharray:0.264583, 0.529167;stroke-dashoffset:0;stroke-opacity:1"
+ x="124.44329"
+ y="115.65893"
+ id="text28"><tspan
+ id="tspan28"
+ style="writing-mode:vertical-lr;fill:#000000;stroke:none;stroke-width:0.264583"
+ x="124.44329"
+ y="115.65893">Time</tspan></text>
+ </g>
+</svg>
diff --git a/doc/board/ti/img/am62lx_boot_diagram_phase2.svg b/doc/board/ti/img/am62lx_boot_diagram_phase2.svg
new file mode 100644
index 000000000000..bac900ebd3eb
--- /dev/null
+++ b/doc/board/ti/img/am62lx_boot_diagram_phase2.svg
@@ -0,0 +1,525 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ width="115.94852mm"
+ height="145.69476mm"
+ viewBox="0 0 115.94853 145.69477"
+ version="1.1"
+ id="svg1"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:svg="http://www.w3.org/2000/svg">
+ <defs
+ id="defs1">
+ <rect
+ x="138.88995"
+ y="89.244179"
+ width="82.705078"
+ height="34.694588"
+ id="rect9" />
+ <rect
+ x="138.88995"
+ y="89.244179"
+ width="83.540909"
+ height="29.679607"
+ id="rect9-9" />
+ <rect
+ x="138.88995"
+ y="89.244179"
+ width="83.540909"
+ height="29.679607"
+ id="rect9-9-6" />
+ </defs>
+ <rect
+ style="fill:none;stroke:#000000;stroke-width:0.264583"
+ id="rect1-9"
+ width="1.9329573"
+ height="60.20092"
+ x="31.628733"
+ y="16.379316" />
+ <rect
+ style="fill:none;stroke:#000000;stroke-width:0.264583"
+ id="rect1-9-6"
+ width="1.9329573"
+ height="64.373627"
+ x="31.569685"
+ y="81.187851" />
+ <rect
+ style="fill:none;stroke:#000000;stroke-width:0.264583"
+ id="rect1-9-2"
+ width="1.9329573"
+ height="25.09384"
+ x="74.106453"
+ y="24.60845" />
+ <rect
+ style="fill:none;stroke:#000000;stroke-width:0.264583"
+ id="rect1-9-2-7"
+ width="1.9329573"
+ height="24.820444"
+ x="74.071457"
+ y="63.541138" />
+ <rect
+ style="fill:none;stroke:#000000;stroke-width:0.264583"
+ id="rect1-9-2-7-6"
+ width="1.9329573"
+ height="14.440828"
+ x="74.120178"
+ y="93.028458" />
+ <rect
+ style="fill:none;stroke:#000000;stroke-width:0.264583"
+ id="rect1-9-2-7-6-2"
+ width="1.9329573"
+ height="14.440828"
+ x="74.067307"
+ y="112.07141" />
+ <path
+ d="m 32.529347,10.149084 0.04093,6.233026"
+ fill="none"
+ stroke="#000000"
+ stroke-miterlimit="10"
+ stroke-dasharray="3.175, 3.175"
+ pointer-events="stroke"
+ id="path272-4"
+ style="display:inline;stroke-width:0.264583;stroke-dasharray:0.264583, 0.529166;stroke-dashoffset:0" />
+ <path
+ d="m 75.145178,10.011397 0.0087,14.680898"
+ fill="none"
+ stroke="#000000"
+ stroke-miterlimit="10"
+ stroke-dasharray="3.175, 3.175"
+ pointer-events="stroke"
+ id="path272-4-6"
+ style="display:inline;stroke-width:0.264583;stroke-dasharray:0.264583, 0.529166;stroke-dashoffset:0" />
+ <path
+ d="m 75.04042,49.654389 0.0036,13.97812"
+ fill="none"
+ stroke="#000000"
+ stroke-miterlimit="10"
+ stroke-dasharray="3.175, 3.175"
+ pointer-events="stroke"
+ id="path272-4-6-8"
+ style="display:inline;stroke-width:0.264583;stroke-dasharray:0.264583, 0.529166;stroke-dashoffset:0" />
+ <path
+ d="m 32.555322,76.438013 0.0036,4.872016"
+ fill="none"
+ stroke="#000000"
+ stroke-miterlimit="10"
+ stroke-dasharray="3.175, 3.175"
+ pointer-events="stroke"
+ id="path272-4-6-8-9"
+ style="display:inline;stroke-width:0.264583;stroke-dasharray:0.264583, 0.529166;stroke-dashoffset:0" />
+ <path
+ d="m 75.042581,88.228681 0.0036,4.872016"
+ fill="none"
+ stroke="#000000"
+ stroke-miterlimit="10"
+ stroke-dasharray="3.175, 3.175"
+ pointer-events="stroke"
+ id="path272-4-6-8-9-4"
+ style="display:inline;stroke-width:0.264583;stroke-dasharray:0.264583, 0.529166;stroke-dashoffset:0" />
+ <path
+ d="m 75.031791,107.33222 0.0036,4.87201"
+ fill="none"
+ stroke="#000000"
+ stroke-miterlimit="10"
+ stroke-dasharray="3.175, 3.175"
+ pointer-events="stroke"
+ id="path272-4-6-8-9-4-5"
+ style="display:inline;stroke-width:0.264583;stroke-dasharray:0.264583, 0.529166;stroke-dashoffset:0" />
+ <rect
+ style="fill:none;stroke:#000000;stroke-width:0.264583"
+ id="rect1-9-2-7-6-2-7"
+ width="1.9329573"
+ height="14.440828"
+ x="74.062813"
+ y="131.12164" />
+ <path
+ d="m 75.027294,126.38245 0.0036,4.87201"
+ fill="none"
+ stroke="#000000"
+ stroke-miterlimit="10"
+ stroke-dasharray="3.175, 3.175"
+ pointer-events="stroke"
+ id="path272-4-6-8-9-4-5-0"
+ style="display:inline;stroke-width:0.264583;stroke-dasharray:0.264583, 0.529166;stroke-dashoffset:0" />
+ <path
+ d="m 111.81164,3.3957745 0.056,138.2673655"
+ fill="none"
+ stroke="#000000"
+ stroke-miterlimit="10"
+ stroke-dasharray="3.175, 3.175"
+ pointer-events="stroke"
+ id="path272-4-6-4"
+ style="display:inline;fill:#d40000;stroke-width:0.264584;stroke-dasharray:0.264584, 0.529166;stroke-dashoffset:0" />
+ <g
+ id="g17"
+ transform="translate(-10.518186,-60.69016)">
+ <rect
+ style="fill:#ffe6cc;fill-opacity:1;stroke:#d79b00;stroke-width:0.264582;stroke-opacity:1"
+ id="rect1"
+ width="16.069794"
+ height="8.8927412"
+ x="26.988451"
+ y="78.507072" />
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:4.23333px;line-height:0.9;font-family:sans-serif;-inkscape-font-specification:sans-serif;font-variant-ligatures:none;text-align:center;writing-mode:lr-tb;direction:ltr;text-anchor:middle;fill:#000000;stroke:none;stroke-width:0.264583"
+ x="34.991573"
+ y="84.456261"
+ id="text1"><tspan
+ id="tspan1"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:4.23333px;font-family:sans-serif;-inkscape-font-specification:sans-serif;fill:#000000;stroke:none;stroke-width:0.264583"
+ x="34.991573"
+ y="84.456261">ROM</tspan></text>
+ </g>
+ <g
+ id="g17-1"
+ transform="translate(48.145333,-52.83606)">
+ <rect
+ style="fill:#ffe6cc;fill-opacity:1;stroke:#d79b00;stroke-width:0.264582;stroke-opacity:1"
+ id="rect1-1"
+ width="16.069794"
+ height="8.8927412"
+ x="26.988451"
+ y="78.507072" />
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:4.23333px;line-height:0.9;font-family:sans-serif;-inkscape-font-specification:sans-serif;font-variant-ligatures:none;text-align:center;writing-mode:lr-tb;direction:ltr;text-anchor:middle;fill:#000000;stroke:none;stroke-width:0.264583"
+ x="34.991573"
+ y="84.456261"
+ id="text1-5"><tspan
+ id="tspan1-98"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:4.23333px;font-family:sans-serif;-inkscape-font-specification:sans-serif;fill:#000000;stroke:none;stroke-width:0.264583"
+ x="34.991573"
+ y="84.456261">ROM</tspan></text>
+ </g>
+ <g
+ id="g21"
+ transform="translate(-10.007886,-48.39645)">
+ <g
+ id="g20"
+ transform="translate(-13.448192,1.681024)">
+ <rect
+ style="fill:#d5e8d4;fill-opacity:1;stroke:#82b366;stroke-width:0.264582;stroke-opacity:1"
+ id="rect1-1-0"
+ width="16.069794"
+ height="8.8927412"
+ x="98.597946"
+ y="111.78242" />
+ </g>
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:4.23333px;line-height:0.9;font-family:sans-serif;-inkscape-font-specification:sans-serif;font-variant-ligatures:none;text-align:center;writing-mode:lr-tb;direction:ltr;text-anchor:middle;fill:#000000;stroke:none;stroke-width:0.264583"
+ x="93.599792"
+ y="119.41312"
+ id="text1-5-4"><tspan
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:4.23333px;font-family:sans-serif;-inkscape-font-specification:sans-serif;fill:#000000;stroke:none;stroke-width:0.264583"
+ x="93.599792"
+ y="119.41312"
+ id="tspan19">BL31</tspan></text>
+ </g>
+ <rect
+ style="fill:#dbe4f4;fill-opacity:1;stroke:#8166b3;stroke-width:0.264582;stroke-opacity:1"
+ id="rect1-1-0-2"
+ width="16.069794"
+ height="8.8927412"
+ x="74.944"
+ y="94.379715" />
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:4.23333px;line-height:0.9;font-family:sans-serif;-inkscape-font-specification:sans-serif;font-variant-ligatures:none;text-align:center;writing-mode:lr-tb;direction:ltr;text-anchor:middle;fill:#000000;stroke:none;stroke-width:0.264583"
+ x="82.984222"
+ y="100.36663"
+ id="text1-5-4-28"><tspan
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:4.23333px;font-family:sans-serif;-inkscape-font-specification:sans-serif;fill:#000000;stroke:none;stroke-width:0.264583"
+ x="82.984222"
+ y="100.36663"
+ id="tspan19-9">TEE</tspan></text>
+ <rect
+ style="fill:#f8cecc;fill-opacity:1;stroke:#b85450;stroke-width:0.264582;stroke-opacity:1"
+ id="rect1-1-0-2-9"
+ width="16.069794"
+ height="8.8927412"
+ x="75.009903"
+ y="113.30912" />
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:4.23333px;line-height:0.9;font-family:sans-serif;-inkscape-font-specification:sans-serif;font-variant-ligatures:none;text-align:center;writing-mode:lr-tb;direction:ltr;text-anchor:middle;fill:#000000;stroke:none;stroke-width:0.264583"
+ x="83.459938"
+ y="119.2588"
+ id="text1-5-4-28-3"><tspan
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:4.23333px;font-family:sans-serif;-inkscape-font-specification:sans-serif;fill:#000000;stroke:none;stroke-width:0.264583"
+ x="83.459938"
+ y="119.2588"
+ id="tspan19-9-1">SPL</tspan></text>
+ <rect
+ style="fill:#f8cecc;fill-opacity:1;stroke:#b85450;stroke-width:0.264582;stroke-opacity:1"
+ id="rect1-1-0-2-9-5"
+ width="16.069794"
+ height="8.8927412"
+ x="75.03476"
+ y="132.62766" />
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:4.23333px;line-height:0.9;font-family:sans-serif;-inkscape-font-specification:sans-serif;font-variant-ligatures:none;text-align:center;writing-mode:lr-tb;direction:ltr;text-anchor:middle;fill:#000000;stroke:none;stroke-width:0.264583"
+ x="82.852531"
+ y="138.55098"
+ id="text1-5-4-28-3-0"><tspan
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:4.23333px;font-family:sans-serif;-inkscape-font-specification:sans-serif;fill:#000000;stroke:none;stroke-width:0.264583"
+ x="82.852531"
+ y="138.55098"
+ id="tspan19-9-1-3">U-Boot</tspan></text>
+ <g
+ id="g21-8"
+ transform="translate(-68.661248,-30.96516)">
+ <g
+ id="g20-7"
+ transform="translate(-13.448192,1.681024)">
+ <rect
+ style="fill:#d5e8d4;fill-opacity:1;stroke:#82b366;stroke-width:0.264582;stroke-opacity:1"
+ id="rect1-1-0-9"
+ width="16.069794"
+ height="8.8927412"
+ x="98.597946"
+ y="111.78242" />
+ </g>
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:4.23333px;line-height:0.9;font-family:sans-serif;-inkscape-font-specification:sans-serif;font-variant-ligatures:none;text-align:center;writing-mode:lr-tb;direction:ltr;text-anchor:middle;fill:#000000;stroke:none;stroke-width:0.264583"
+ x="93.599792"
+ y="119.41312"
+ id="text1-5-4-2"><tspan
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:4.23333px;font-family:sans-serif;-inkscape-font-specification:sans-serif;fill:#000000;stroke:none;stroke-width:0.264583"
+ x="93.599792"
+ y="119.41312"
+ id="tspan19-0">TI-FS</tspan></text>
+ </g>
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:4.23333px;line-height:0.9;font-family:sans-serif;-inkscape-font-specification:sans-serif;font-variant-ligatures:none;text-align:center;writing-mode:lr-tb;direction:ltr;text-anchor:middle;fill:#000000;stroke:none;stroke-width:0.264583"
+ x="53.789471"
+ y="23.866583"
+ id="text1-8-2"><tspan
+ id="tspan1-9-9"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:4.23333px;font-family:sans-serif;-inkscape-font-specification:sans-serif;fill:#000000;stroke:none;stroke-width:0.264583"
+ x="53.789471"
+ y="23.866583">Release A53 ROM</tspan></text>
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:4.23333px;line-height:0.9;font-family:sans-serif;-inkscape-font-specification:sans-serif;font-variant-ligatures:none;text-align:center;writing-mode:lr-tb;direction:ltr;text-anchor:middle;fill:#000000;stroke:none;stroke-width:0.264583"
+ x="53.830021"
+ y="42.944962"
+ id="text1-8-2-6"><tspan
+ id="tspan1-9-9-9"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:4.23333px;font-family:sans-serif;-inkscape-font-specification:sans-serif;fill:#000000;stroke:none;stroke-width:0.264583"
+ x="53.830021"
+ y="42.944962">Authenticate</tspan><tspan
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:4.23333px;font-family:sans-serif;-inkscape-font-specification:sans-serif;fill:#000000;stroke:none;stroke-width:0.264583"
+ x="53.830021"
+ y="46.754951"
+ id="tspan10">tispl.bin</tspan></text>
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:4.23333px;line-height:0.9;font-family:sans-serif;-inkscape-font-specification:sans-serif;font-variant-ligatures:none;text-align:center;writing-mode:lr-tb;direction:ltr;text-anchor:middle;fill:#000000;stroke:none;stroke-width:0.264583"
+ x="53.65202"
+ y="58.005455"
+ id="text1-8-2-6-0"><tspan
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:4.23333px;font-family:sans-serif;-inkscape-font-specification:sans-serif;fill:#000000;stroke:none;stroke-width:0.264583"
+ x="53.65202"
+ y="58.005455"
+ id="tspan10-1">Reset A53 to</tspan><tspan
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:4.23333px;font-family:sans-serif;-inkscape-font-specification:sans-serif;fill:#000000;stroke:none;stroke-width:0.264583"
+ x="53.65202"
+ y="61.815453"
+ id="tspan16">BL31 Entry</tspan></text>
+ <path
+ d="M 33.480998,24.617611 H 74.218817"
+ fill="none"
+ stroke="#000000"
+ stroke-miterlimit="10"
+ pointer-events="stroke"
+ id="path292"
+ style="stroke-width:0.264582" />
+ <rect
+ style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:0.264584;stroke-opacity:1"
+ id="rect8"
+ width="29.836563"
+ height="9.8913136"
+ x="78.345154"
+ y="36.504906"
+ ry="1.8797468"
+ rx="1.8797469" />
+ <rect
+ style="display:inline;fill:none;fill-opacity:1;stroke:#000000;stroke-width:0.264584;stroke-opacity:1"
+ id="rect8-7"
+ width="29.836563"
+ height="9.8913136"
+ x="60.328167"
+ y="0.132292"
+ ry="1.8797468"
+ rx="1.8797469" />
+ <rect
+ style="display:inline;fill:none;fill-opacity:1;stroke:#000000;stroke-width:0.264584;stroke-opacity:1"
+ id="rect8-7-9"
+ width="29.836563"
+ height="9.8913136"
+ x="17.564394"
+ y="0.29423353"
+ ry="1.8797468"
+ rx="1.8797469" />
+ <rect
+ style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:0.264584;stroke-opacity:1"
+ id="rect8-31"
+ width="29.836563"
+ height="9.8913136"
+ x="78.386932"
+ y="76.233536"
+ ry="1.8797468"
+ rx="1.8797469" />
+ <rect
+ style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:0.264583;stroke-opacity:1"
+ id="rect8-3"
+ width="29.756132"
+ height="9.9170303"
+ x="0.15036553"
+ y="50.784637"
+ ry="1.8797468"
+ rx="1.8797469" />
+ <rect
+ style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:0.264583;stroke-opacity:1"
+ id="rect8-3-5"
+ width="29.756132"
+ height="9.9170303"
+ x="0.1322915"
+ y="65.710831"
+ ry="1.8797468"
+ rx="1.8797469" />
+ <text
+ xml:space="preserve"
+ transform="matrix(0.26458333,0,0,0.26458333,45.634161,14.315605)"
+ id="text8"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;line-height:0.9;font-family:sans-serif;-inkscape-font-specification:sans-serif;font-variant-ligatures:none;text-align:center;writing-mode:lr-tb;direction:ltr;white-space:pre;shape-inside:url(#rect9);display:inline;fill:#000000;fill-opacity:1;stroke:none;stroke-opacity:1"
+ x="0"
+ y="0"><tspan
+ x="162.65117"
+ y="101.24414"
+ id="tspan3">Load </tspan><tspan
+ x="153.55515"
+ y="115.64414"
+ id="tspan4">tispl.bin</tspan></text>
+ <text
+ xml:space="preserve"
+ transform="matrix(0.26458333,0,0,0.26458333,-32.668058,28.614859)"
+ id="text8-6"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;line-height:0.9;font-family:sans-serif;-inkscape-font-specification:sans-serif;font-variant-ligatures:none;text-align:center;writing-mode:lr-tb;direction:ltr;white-space:pre;shape-inside:url(#rect9-9);display:inline;fill:#000000;fill-opacity:1;stroke:none;stroke-opacity:1"
+ x="0"
+ y="0"><tspan
+ x="152.34912"
+ y="101.24414"
+ id="tspan5">Validate </tspan><tspan
+ x="153.97311"
+ y="115.64414"
+ id="tspan6">tispl.bin</tspan></text>
+ <text
+ xml:space="preserve"
+ transform="matrix(0.26458333,0,0,0.26458333,-34.238568,43.502747)"
+ id="text8-6-9"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;line-height:0.9;font-family:sans-serif;-inkscape-font-specification:sans-serif;font-variant-ligatures:none;text-align:center;writing-mode:lr-tb;direction:ltr;white-space:pre;shape-inside:url(#rect9-9-6);display:inline;fill:#000000;fill-opacity:1;stroke:none;stroke-opacity:1"
+ x="0"
+ y="0"><tspan
+ x="145.15712"
+ y="101.24414"
+ id="tspan7">Boot TIFS </tspan><tspan
+ x="147.90111"
+ y="115.64414"
+ id="tspan8">Firmware</tspan></text>
+ <path
+ d="m 74.142828,24.62929 -1.85208,0.92604 0.46302,-0.92604 -0.46302,-0.92604 z"
+ fill="#000000"
+ stroke="#000000"
+ stroke-miterlimit="10"
+ pointer-events="all"
+ id="path294-4"
+ style="stroke-width:0.264583" />
+ <g
+ id="g18"
+ transform="matrix(1.3039736,0,0,1,-23.678085,-54.48423)"
+ style="stroke-width:0.875721">
+ <path
+ d="m 43.895114,102.59059 h 31.14238"
+ fill="none"
+ stroke="#000000"
+ stroke-miterlimit="10"
+ pointer-events="stroke"
+ id="path292-5"
+ style="stroke-width:0.231701" />
+ <path
+ d="m 44.052705,102.59467 1.85208,0.92604 -0.46302,-0.92604 0.46302,-0.92604 z"
+ fill="#000000"
+ stroke="#000000"
+ stroke-miterlimit="10"
+ pointer-events="all"
+ id="path294-8"
+ style="stroke-width:0.231701" />
+ </g>
+ <path
+ d="M 33.426513,63.550493 H 73.037202"
+ fill="none"
+ stroke="#000000"
+ stroke-miterlimit="10"
+ pointer-events="stroke"
+ id="path292-5-4"
+ style="stroke-width:0.264583" />
+ <path
+ d="m 73.864824,63.560693 -2.115358,0.92604 0.52884,-0.92604 -0.52884,-0.92604 z"
+ fill="#000000"
+ stroke="#000000"
+ stroke-miterlimit="10"
+ pointer-events="all"
+ id="path294-8-8"
+ style="stroke-width:0.264583" />
+ <path
+ d="m 111.88533,142.46714 -0.92604,-2.11535 0.92604,0.52884 0.92604,-0.52884 z"
+ fill="#000000"
+ stroke="#000000"
+ stroke-miterlimit="10"
+ pointer-events="all"
+ id="path294-8-8-9"
+ style="display:inline;stroke-width:0.264583" />
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:4.23333px;line-height:0.9;font-family:sans-serif;-inkscape-font-specification:sans-serif;font-variant-ligatures:none;text-align:center;writing-mode:lr-tb;direction:ltr;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.264583;stroke-opacity:1"
+ x="93.181946"
+ y="82.699966"
+ id="text12">SCMI Init</text>
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:4.23333px;line-height:0.9;font-family:sans-serif;-inkscape-font-specification:sans-serif;font-variant-ligatures:none;text-align:center;writing-mode:lr-tb;direction:ltr;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.264583;stroke-opacity:1"
+ x="75.171364"
+ y="6.6383266"
+ id="text26"><tspan
+ id="tspan26"
+ style="fill:#000000;stroke:none;stroke-width:0.264583"
+ x="75.171364"
+ y="6.6383266">Cortex A53</tspan></text>
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:4.23333px;line-height:0.9;font-family:sans-serif;-inkscape-font-specification:sans-serif;font-variant-ligatures:none;text-align:center;writing-mode:lr-tb;direction:ltr;text-anchor:middle;display:inline;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.264583;stroke-opacity:1"
+ x="32.577484"
+ y="6.5251598"
+ id="text26-8"><tspan
+ id="tspan26-3"
+ style="fill:#000000;stroke:none;stroke-width:0.264583"
+ x="32.577484"
+ y="6.5251598">SMS M4</tspan></text>
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:4.23333px;line-height:0.9;font-family:sans-serif;-inkscape-font-specification:sans-serif;font-variant-ligatures:none;text-align:center;writing-mode:vertical-lr;direction:ltr;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.264583;stroke-dasharray:0.264583, 0.529167;stroke-dashoffset:0;stroke-opacity:1"
+ x="114.13243"
+ y="68.022209"
+ id="text28"><tspan
+ id="tspan28"
+ style="writing-mode:vertical-lr;fill:#000000;stroke:none;stroke-width:0.264583"
+ x="114.13243"
+ y="68.022209">Time</tspan></text>
+</svg>
diff --git a/doc/board/ti/img/am62lx_tiboot3.bin.svg b/doc/board/ti/img/am62lx_tiboot3.bin.svg
new file mode 100644
index 000000000000..17b9a8538881
--- /dev/null
+++ b/doc/board/ti/img/am62lx_tiboot3.bin.svg
@@ -0,0 +1,170 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ width="62.236633mm"
+ height="85.065804mm"
+ viewBox="0 0 62.236632 85.065803"
+ version="1.1"
+ id="svg51133"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:svg="http://www.w3.org/2000/svg">
+ <defs
+ id="defs51130">
+ <rect
+ x="20.016691"
+ y="45.512157"
+ width="194.45363"
+ height="67.070183"
+ id="rect79831" />
+ <rect
+ x="20.016691"
+ y="45.512157"
+ width="194.45363"
+ height="67.070183"
+ id="rect79831-4" />
+ <rect
+ x="20.016691"
+ y="45.512157"
+ width="194.45363"
+ height="67.070183"
+ id="rect79831-2" />
+ <rect
+ x="20.016691"
+ y="45.512157"
+ width="194.45363"
+ height="67.070183"
+ id="rect79831-2-2" />
+ <rect
+ x="20.016691"
+ y="45.512157"
+ width="194.45363"
+ height="67.070183"
+ id="rect79831-2-2-8" />
+ <rect
+ x="20.016691"
+ y="45.512157"
+ width="194.45363"
+ height="67.070183"
+ id="rect79831-6" />
+ </defs>
+ <rect
+ style="fill:#ffe6cc;fill-opacity:1;stroke:#d79b00;stroke-width:0.22289;stroke-opacity:1"
+ id="rect51238"
+ width="62.013744"
+ height="84.842911"
+ x="0.11144508"
+ y="0.11144508"
+ ry="9.4566326" />
+ <rect
+ style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:0.195943;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ id="rect51478"
+ width="48.173313"
+ height="13.032638"
+ x="6.9406042"
+ y="25.645016"
+ ry="0" />
+ <rect
+ style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:0.195943;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ id="rect51478-8"
+ width="48.173313"
+ height="13.032638"
+ x="6.9406042"
+ y="12.612378"
+ ry="0" />
+ <rect
+ style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:0.195884;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ id="rect51478-9"
+ width="48.161327"
+ height="13.02805"
+ x="6.9406042"
+ y="38.677654"
+ ry="0" />
+ <rect
+ style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:0.195884;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ id="rect51478-9-1"
+ width="48.161327"
+ height="13.02805"
+ x="6.9406042"
+ y="51.705704"
+ ry="0" />
+ <rect
+ style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:0.195884;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ id="rect51478-9-1-2"
+ width="48.161327"
+ height="13.02805"
+ x="6.9406042"
+ y="64.733757"
+ ry="0" />
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:4.58611px;line-height:1.25;font-family:Helvetica;-inkscape-font-specification:Helvetica;font-variant-ligatures:none;stroke-width:0.264583"
+ x="20.600019"
+ y="7.8484602"
+ id="text53682"><tspan
+ id="tspan53680"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:4.58611px;font-family:Helvetica;-inkscape-font-specification:Helvetica;stroke-width:0.264583"
+ x="20.600019"
+ y="7.8484602">tiboot3.bin</tspan></text>
+ <text
+ xml:space="preserve"
+ transform="matrix(0.26458333,0,0,0.26458333,0.52916667,17.991672)"
+ id="text79829"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;line-height:1.25;font-family:Helvetica;-inkscape-font-specification:Helvetica;font-variant-ligatures:none;text-align:center;white-space:pre;shape-inside:url(#rect79831)"
+ x="56.255871"
+ y="0"><tspan
+ x="83.140137"
+ y="60.311719"
+ id="tspan1">TF-A BL1</tspan></text>
+ <text
+ xml:space="preserve"
+ transform="matrix(0.26458333,0,0,0.26458333,0.17044751,5.285958)"
+ id="text79829-8"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;line-height:1.25;font-family:Helvetica;-inkscape-font-specification:Helvetica;font-variant-ligatures:none;text-align:center;white-space:pre;shape-inside:url(#rect79831-6)"
+ x="56.255871"
+ y="0"><tspan
+ x="43.948105"
+ y="60.311719"
+ id="tspan2">x509 User Certificate</tspan></text>
+ <text
+ xml:space="preserve"
+ transform="matrix(0.26458333,0,0,0.26458333,-0.0933935,30.897375)"
+ id="text79829-6"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;line-height:1.25;font-family:Helvetica;-inkscape-font-specification:Helvetica;font-variant-ligatures:none;text-align:center;white-space:pre;shape-inside:url(#rect79831-2)"
+ x="56.255871"
+ y="0"><tspan
+ x="38.292099"
+ y="60.311719"
+ id="tspan3">Encrypted TIFS Binary</tspan></text>
+ <text
+ xml:space="preserve"
+ transform="matrix(0.26458333,0,0,0.26458333,-0.06460892,41.158058)"
+ id="text79829-6-8"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;line-height:1.25;font-family:Helvetica;-inkscape-font-specification:Helvetica;font-variant-ligatures:none;text-align:center;white-space:pre;shape-inside:url(#rect79831-2-2)"
+ x="56.255871"
+ y="0"><tspan
+ x="35.4673"
+ y="60.311719"
+ id="tspan4">TIFS Board & Security
+</tspan><tspan
+ x="52.220093"
+ y="80.311719"
+ id="tspan5">Configuration Files</tspan></text>
+ <text
+ xml:space="preserve"
+ transform="matrix(0.26458333,0,0,0.26458333,0.08028719,57.131985)"
+ id="text79829-6-8-8"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;line-height:1.25;font-family:Helvetica;-inkscape-font-specification:Helvetica;font-variant-ligatures:none;text-align:center;white-space:pre;shape-inside:url(#rect79831-2-2-8)"
+ x="56.255871"
+ y="0"><tspan
+ x="35.196075"
+ y="60.311719"
+ id="tspan6">TIFS Vendor Certificate</tspan></text>
+ <text
+ xml:space="preserve"
+ transform="matrix(0.26458333,0,0,0.26458333,-0.98430343,17.372352)"
+ id="text79829-2"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;line-height:1.25;font-family:Helvetica;-inkscape-font-specification:Helvetica;font-variant-ligatures:none;text-align:center;white-space:pre;shape-inside:url(#rect79831-4)"
+ x="56.255871"
+ y="0" />
+</svg>
diff --git a/doc/board/ti/img/am62lx_tispl.bin.svg b/doc/board/ti/img/am62lx_tispl.bin.svg
new file mode 100644
index 000000000000..d2c9d7d56951
--- /dev/null
+++ b/doc/board/ti/img/am62lx_tispl.bin.svg
@@ -0,0 +1,222 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ width="62.236744mm"
+ height="111.84308mm"
+ viewBox="0 0 62.236743 111.84308"
+ version="1.1"
+ id="svg51133"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:svg="http://www.w3.org/2000/svg">
+ <defs
+ id="defs51130">
+ <rect
+ x="20.016691"
+ y="45.512157"
+ width="194.45363"
+ height="67.070183"
+ id="rect79831" />
+ <rect
+ x="20.016691"
+ y="45.512157"
+ width="194.45363"
+ height="67.070183"
+ id="rect79831-4" />
+ <rect
+ x="20.016691"
+ y="45.512157"
+ width="194.45363"
+ height="67.070183"
+ id="rect79831-2" />
+ <rect
+ x="20.016691"
+ y="45.512157"
+ width="194.45363"
+ height="67.070183"
+ id="rect79831-2-2" />
+ <rect
+ x="20.016691"
+ y="45.512157"
+ width="194.45363"
+ height="67.070183"
+ id="rect79831-2-2-8" />
+ <rect
+ x="20.016691"
+ y="45.512157"
+ width="194.45363"
+ height="67.070183"
+ id="rect79831-6" />
+ <rect
+ x="20.016691"
+ y="45.512157"
+ width="194.45363"
+ height="67.070183"
+ id="rect79831-2-2-8-3" />
+ <rect
+ x="20.016691"
+ y="45.512157"
+ width="194.45363"
+ height="67.070183"
+ id="rect79831-2-2-8-3-9" />
+ </defs>
+ <g
+ id="layer1"
+ transform="translate(5.4851174e-5,5.4851174e-5)">
+ <rect
+ style="fill:#d5e8d4;fill-opacity:1;stroke:#82b366;stroke-width:0.255676;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ id="rect51238"
+ width="61.981068"
+ height="111.5874"
+ x="0.12778315"
+ y="0.12778315"
+ ry="8.4550943" />
+ <rect
+ style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:0.195943;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ id="rect51478"
+ width="48.173313"
+ height="13.032638"
+ x="6.9406042"
+ y="25.645016"
+ ry="0" />
+ <rect
+ style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:0.195943;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ id="rect51478-8"
+ width="48.173313"
+ height="13.032638"
+ x="6.9406042"
+ y="12.612378"
+ ry="0" />
+ <rect
+ style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:0.195884;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ id="rect51478-9"
+ width="48.161327"
+ height="13.02805"
+ x="6.9406042"
+ y="38.677654"
+ ry="0" />
+ <rect
+ style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:0.195884;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ id="rect51478-9-1"
+ width="48.161327"
+ height="13.02805"
+ x="6.9406042"
+ y="51.705704"
+ ry="0" />
+ <rect
+ style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:0.195884;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ id="rect51478-9-1-2"
+ width="48.161327"
+ height="13.02805"
+ x="6.9406042"
+ y="64.733757"
+ ry="0" />
+ <rect
+ style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:0.195884;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ id="rect51478-9-1-2-3"
+ width="48.161327"
+ height="13.02805"
+ x="6.9406042"
+ y="77.76181"
+ ry="0" />
+ <rect
+ style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:0.195884;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ id="rect51478-9-1-2-3-7"
+ width="48.161327"
+ height="13.02805"
+ x="6.9406042"
+ y="90.789864"
+ ry="0" />
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:4.58611px;line-height:1.25;font-family:Helvetica;-inkscape-font-specification:Helvetica;font-variant-ligatures:none;stroke-width:0.264583"
+ x="23.345928"
+ y="7.5099988"
+ id="text53682"><tspan
+ id="tspan53680"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:4.58611px;font-family:Helvetica;-inkscape-font-specification:Helvetica;stroke-width:0.264583"
+ x="23.345928"
+ y="7.5099988">tispl.bin</tspan></text>
+ <text
+ xml:space="preserve"
+ transform="matrix(0.26458333,0,0,0.26458333,0.52916667,17.991672)"
+ id="text79829"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;line-height:1.25;font-family:Helvetica;-inkscape-font-specification:Helvetica;font-variant-ligatures:none;text-align:center;white-space:pre;shape-inside:url(#rect79831)"
+ x="56.255871"
+ y="0"><tspan
+ x="78.844223"
+ y="59.175719"
+ id="tspan129104">TF-A BL31</tspan></text>
+ <text
+ xml:space="preserve"
+ transform="matrix(0.26458333,0,0,0.26458333,0.17044751,5.285958)"
+ id="text79829-8"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;line-height:1.25;font-family:Helvetica;-inkscape-font-specification:Helvetica;font-variant-ligatures:none;text-align:center;white-space:pre;shape-inside:url(#rect79831-6)"
+ x="56.255871"
+ y="0"><tspan
+ x="42.572357"
+ y="59.175719"
+ id="tspan129106">x509 User Certificate</tspan></text>
+ <text
+ xml:space="preserve"
+ transform="matrix(0.26458333,0,0,0.26458333,-0.0933935,30.897375)"
+ id="text79829-6"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;line-height:1.25;font-family:Helvetica;-inkscape-font-specification:Helvetica;font-variant-ligatures:none;text-align:center;white-space:pre;shape-inside:url(#rect79831-2)"
+ x="56.255871"
+ y="0"><tspan
+ x="36.972336"
+ y="59.175719"
+ id="tspan129108">Encrypted TIFS Binary</tspan></text>
+ <text
+ xml:space="preserve"
+ transform="matrix(0.26458333,0,0,0.26458333,-0.06460892,41.158058)"
+ id="text79829-6-8"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;line-height:1.25;font-family:Helvetica;-inkscape-font-specification:Helvetica;font-variant-ligatures:none;text-align:center;white-space:pre;shape-inside:url(#rect79831-2-2)"
+ x="56.255871"
+ y="0"><tspan
+ x="37.980316"
+ y="59.175719"
+ id="tspan129110">TIFS Board & Security
+</tspan><tspan
+ x="50.868347"
+ y="79.175719"
+ id="tspan129112">Configuration Files</tspan></text>
+ <text
+ xml:space="preserve"
+ transform="matrix(0.26458333,0,0,0.26458333,0.08028719,57.131985)"
+ id="text79829-6-8-8"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;line-height:1.25;font-family:Helvetica;-inkscape-font-specification:Helvetica;font-variant-ligatures:none;text-align:center;white-space:pre;shape-inside:url(#rect79831-2-2-8)"
+ x="56.255871"
+ y="0"><tspan
+ x="34.524368"
+ y="59.175719"
+ id="tspan129114">TIFS Vendor Certificate</tspan></text>
+ <text
+ xml:space="preserve"
+ transform="matrix(0.26458333,0,0,0.26458333,0.12491591,70.050492)"
+ id="text79829-6-8-8-8"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;line-height:1.25;font-family:Helvetica;-inkscape-font-specification:Helvetica;font-variant-ligatures:none;text-align:center;white-space:pre;shape-inside:url(#rect79831-2-2-8-3)"
+ x="56.255871"
+ y="0"><tspan
+ x="88.596207"
+ y="59.175719"
+ id="tspan129116">OP-TEE</tspan></text>
+ <text
+ xml:space="preserve"
+ transform="matrix(0.26458333,0,0,0.26458333,-0.31574226,83.33275)"
+ id="text79829-6-8-8-8-3"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;line-height:1.25;font-family:Helvetica;-inkscape-font-specification:Helvetica;font-variant-ligatures:none;text-align:center;white-space:pre;shape-inside:url(#rect79831-2-2-8-3-9)"
+ x="56.255871"
+ y="0"><tspan
+ x="75.300201"
+ y="59.175719"
+ id="tspan129118">U-Boot SPL</tspan></text>
+ <text
+ xml:space="preserve"
+ transform="matrix(0.26458333,0,0,0.26458333,-0.98430343,17.372352)"
+ id="text79829-2"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;line-height:1.25;font-family:Helvetica;-inkscape-font-specification:Helvetica;font-variant-ligatures:none;text-align:center;white-space:pre;shape-inside:url(#rect79831-4)"
+ x="56.255871"
+ y="0" />
+ </g>
+</svg>
diff --git a/doc/board/ti/img/am62lx_u-boot.img.svg b/doc/board/ti/img/am62lx_u-boot.img.svg
new file mode 100644
index 000000000000..b20ab1a491ed
--- /dev/null
+++ b/doc/board/ti/img/am62lx_u-boot.img.svg
@@ -0,0 +1,143 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ width="62.236744mm"
+ height="59.627434mm"
+ viewBox="0 0 62.236744 59.627435"
+ version="1.1"
+ id="svg51133"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:svg="http://www.w3.org/2000/svg">
+ <defs
+ id="defs51130">
+ <rect
+ x="20.016691"
+ y="45.512157"
+ width="194.45363"
+ height="67.070183"
+ id="rect79831" />
+ <rect
+ x="20.016691"
+ y="45.512157"
+ width="194.45363"
+ height="67.070183"
+ id="rect79831-4" />
+ <rect
+ x="20.016691"
+ y="45.512157"
+ width="194.45363"
+ height="67.070183"
+ id="rect79831-2" />
+ <rect
+ x="20.016691"
+ y="45.512157"
+ width="194.45363"
+ height="67.070183"
+ id="rect79831-2-2" />
+ <rect
+ x="20.016691"
+ y="45.512157"
+ width="194.45363"
+ height="67.070183"
+ id="rect79831-2-2-8" />
+ <rect
+ x="20.016691"
+ y="45.512157"
+ width="194.45363"
+ height="67.070183"
+ id="rect79831-6" />
+ <rect
+ x="20.016691"
+ y="45.512157"
+ width="194.45363"
+ height="67.070183"
+ id="rect79831-2-2-8-3" />
+ <rect
+ x="20.016691"
+ y="45.512157"
+ width="194.45363"
+ height="67.070183"
+ id="rect79831-2-2-8-3-9" />
+ </defs>
+ <rect
+ style="fill:#dbe4f4;fill-opacity:1;stroke:#8166b3;stroke-width:0.255676;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ id="rect51238"
+ width="61.981068"
+ height="59.371758"
+ x="0.127838"
+ y="0.127838"
+ ry="8.4550943"
+ rx="8.4550943" />
+ <rect
+ style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:0.195943;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ id="rect51478"
+ width="48.173313"
+ height="13.032638"
+ x="6.9406586"
+ y="25.645071"
+ ry="0" />
+ <rect
+ style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:0.195943;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ id="rect51478-8"
+ width="48.173313"
+ height="13.032638"
+ x="6.9406586"
+ y="12.612433"
+ ry="0" />
+ <rect
+ style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:0.195884;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ id="rect51478-9"
+ width="48.161327"
+ height="13.02805"
+ x="6.9406586"
+ y="38.677708"
+ ry="0" />
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:4.58611px;line-height:1.25;font-family:Helvetica;-inkscape-font-specification:Helvetica;font-variant-ligatures:none;stroke-width:0.264583"
+ x="20.700148"
+ y="8.0392199"
+ id="text53682"><tspan
+ id="tspan53680"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:4.58611px;font-family:Helvetica;-inkscape-font-specification:Helvetica;stroke-width:0.264583"
+ x="20.700148"
+ y="8.0392199">u-boot.img</tspan></text>
+ <text
+ xml:space="preserve"
+ transform="matrix(0.26458333,0,0,0.26458333,0.52922115,17.991727)"
+ id="text79829"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;line-height:1.25;font-family:Helvetica;-inkscape-font-specification:Helvetica;font-variant-ligatures:none;text-align:center;white-space:pre;shape-inside:url(#rect79831);display:inline"
+ x="56.255871"
+ y="0"><tspan
+ x="92.724136"
+ y="60.311719"
+ id="tspan1">U-Boot</tspan></text>
+ <text
+ xml:space="preserve"
+ transform="matrix(0.26458333,0,0,0.26458333,0.17050215,5.2860127)"
+ id="text79829-8"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;line-height:1.25;font-family:Helvetica;-inkscape-font-specification:Helvetica;font-variant-ligatures:none;text-align:center;white-space:pre;shape-inside:url(#rect79831-6);display:inline"
+ x="56.255871"
+ y="0"><tspan
+ x="77.404114"
+ y="60.311719"
+ id="tspan2">FIT Header</tspan></text>
+ <text
+ xml:space="preserve"
+ transform="matrix(0.26458333,0,0,0.26458333,-0.09333885,30.89743)"
+ id="text79829-6"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;line-height:1.25;font-family:Helvetica;-inkscape-font-specification:Helvetica;font-variant-ligatures:none;text-align:center;white-space:pre;shape-inside:url(#rect79831-2);display:inline"
+ x="56.255871"
+ y="0"><tspan
+ x="74.772141"
+ y="60.311719"
+ id="tspan3">U-Boot DTB</tspan></text>
+ <text
+ xml:space="preserve"
+ transform="matrix(0.26458333,0,0,0.26458333,-0.98424885,17.372407)"
+ id="text79829-2"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;line-height:1.25;font-family:Helvetica;-inkscape-font-specification:Helvetica;font-variant-ligatures:none;text-align:center;white-space:pre;shape-inside:url(#rect79831-4);display:inline"
+ x="56.255871"
+ y="0" />
+</svg>
diff --git a/doc/board/ti/k3.rst b/doc/board/ti/k3.rst
index b7b69949af16..56df72b656bd 100644
--- a/doc/board/ti/k3.rst
+++ b/doc/board/ti/k3.rst
@@ -33,6 +33,7 @@ K3 Based SoCs
am62ax_sk
am62dx_evm
am62x_sk
+ am62lx_evm
am62px_sk
am6254atl_sk
am64x_evm
--
2.54.0
^ permalink raw reply related [flat|nested] 21+ messages in thread* Re: [PATCH v3 11/11] doc: board: ti: am62lx_evm: add initial docs for the AM62L-EVM
2026-08-04 0:09 ` [PATCH v3 11/11] doc: board: ti: am62lx_evm: add initial docs for the AM62L-EVM Bryan Brattlof
@ 2026-08-04 11:29 ` Anshul Dalal
0 siblings, 0 replies; 21+ messages in thread
From: Anshul Dalal @ 2026-08-04 11:29 UTC (permalink / raw)
To: Bryan Brattlof, u-boot
Cc: Peng Fan, Tom Rini, Dan Carpenter, Anshul Dalal, Simon Glass,
Alper Nebi Yasak, Ilias Apalodimas, Aristo Chen, Udit Kumar,
Andrew Davis, Daniel Golle, Johan Jonker, Vignesh Raghavendra,
Paresh Bhagat, Swamil Jain, Neha Malcom Francis, Shiva Tripathi,
Apurva Nandan, Chintan Vankar, Francesco Dolcini, Marek Vasut,
Siddharth Vadapalli, Hrushikesh Salunke, Manorit Chawdhry
On Tue Aug 4, 2026 at 5:39 AM IST, Bryan Brattlof wrote:
> Add the initial documentation on the bootflow, build, and deubgging
> procedures along with the relevant links to more information about the
> AM62Lx processor and the reference board.
>
> Tested-by: Anshul Dalal <anshuld@ti.com>
> Signed-off-by: Bryan Brattlof <bb@ti.com>
Reviewed-by: Anshul Dalal <anshuld@ti.com>
^ permalink raw reply [flat|nested] 21+ messages in thread