summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Rini <[email protected]>2026-07-03 10:10:34 -0600
committerTom Rini <[email protected]>2026-07-03 10:10:34 -0600
commit476bea8b0ce95da2741dcb0be2b107384ce7c806 (patch)
tree884dc17108f4b7e4f8142fe5b4a06fae1ee1813b
parente800cc67f5b6cb50a20f37c993ec1cd4063bdbd3 (diff)
parent48b7c05d272747ec4d8f8f7eb53119ef149dcc7a (diff)
Merge patch series "TI: AM64-EVM/SK: Enable MAIN UART1 for SYSFW tracing"
Vishal Mahaveer <[email protected]> says: Collecting SYSFW traces from DMSC firmware is broken on the current codebase. These changes enables MAIN_UART1 for collecting SYSFW traces when the trace option is enabled in the boardcfg. Link: https://lore.kernel.org/r/[email protected]
-rw-r--r--arch/arm/dts/k3-am642-r5-evm.dts10
-rw-r--r--arch/arm/dts/k3-am642-r5-sk.dts10
-rw-r--r--arch/arm/mach-k3/am64x/am642_init.c4
3 files changed, 22 insertions, 2 deletions
diff --git a/arch/arm/dts/k3-am642-r5-evm.dts b/arch/arm/dts/k3-am642-r5-evm.dts
index e3d363a8e39..d1fe7efd006 100644
--- a/arch/arm/dts/k3-am642-r5-evm.dts
+++ b/arch/arm/dts/k3-am642-r5-evm.dts
@@ -23,3 +23,13 @@
clocks = <&clk_200mhz>;
clock-names = "clk_xin";
};
+
+&main_uart1_pins_default {
+ bootph-pre-ram;
+};
+
+/* Main UART1 is used for TIFS firmware logs */
+&main_uart1 {
+ bootph-pre-ram;
+ status="okay";
+};
diff --git a/arch/arm/dts/k3-am642-r5-sk.dts b/arch/arm/dts/k3-am642-r5-sk.dts
index 27f3e87fb90..19435cd1f5c 100644
--- a/arch/arm/dts/k3-am642-r5-sk.dts
+++ b/arch/arm/dts/k3-am642-r5-sk.dts
@@ -18,3 +18,13 @@
&serdes_wiz0 {
status = "okay";
};
+
+&main_uart1_pins_default {
+ bootph-pre-ram;
+};
+
+/* Main UART1 is used for TIFS firmware logs */
+&main_uart1 {
+ bootph-pre-ram;
+ status="okay";
+};
diff --git a/arch/arm/mach-k3/am64x/am642_init.c b/arch/arm/mach-k3/am64x/am642_init.c
index a15adf1cb1e..d6cc7a85aae 100644
--- a/arch/arm/mach-k3/am64x/am642_init.c
+++ b/arch/arm/mach-k3/am64x/am642_init.c
@@ -212,14 +212,14 @@ void board_init_f(ulong dummy)
#if defined(CONFIG_K3_LOAD_SYSFW)
/*
- * Process pinctrl for serial3 a.k.a. MAIN UART1 module and continue
+ * Process pinctrl for serial1 a.k.a. MAIN UART1 module and continue
* regardless of the result of pinctrl. Do this without probing the
* device, but instead by searching the device that would request the
* given sequence number if probed. The UART will be used by the system
* firmware (SYSFW) image for various purposes and SYSFW depends on us
* to initialize its pin settings.
*/
- ret = uclass_find_device_by_seq(UCLASS_SERIAL, 3, &dev);
+ ret = uclass_find_device_by_seq(UCLASS_SERIAL, 1, &dev);
if (!ret)
pinctrl_select_state(dev, "default");