* [PATCH 1/3] arm64: dts: ti: k3-am62x-sk-common: Enable Main UART wakeup
2025-09-04 21:28 [PATCH 0/3] arm64: dts: ti: k3-am62: Support Main UART wakeup Kendall Willis
@ 2025-09-04 21:28 ` Kendall Willis
2025-09-09 8:35 ` Markus Schneider-Pargmann
2025-09-04 21:28 ` [PATCH 2/3] arm64: dts: ti: k3-am62a7-sk: " Kendall Willis
` (3 subsequent siblings)
4 siblings, 1 reply; 9+ messages in thread
From: Kendall Willis @ 2025-09-04 21:28 UTC (permalink / raw)
To: nm, vigneshr, kristo, robh, krzk+dt, conor+dt, linux-arm-kernel,
devicetree, linux-kernel
Cc: d-gole, vishalm, sebin.francis, msp, khilman, a-kaur, k-willis
The Main UART can resume from suspend to RAM states when PIN_WKUP_EN
is enabled. Add the necessary pins needed to wakeup the system. Add the
system idle states that the Main UART can wakeup the system from.
Signed-off-by: Kendall Willis <k-willis@ti.com>
---
.../arm64/boot/dts/ti/k3-am62x-sk-common.dtsi | 24 +++++++++++++++----
1 file changed, 20 insertions(+), 4 deletions(-)
diff --git a/arch/arm64/boot/dts/ti/k3-am62x-sk-common.dtsi b/arch/arm64/boot/dts/ti/k3-am62x-sk-common.dtsi
index 13e1d36123d51..72801cf890d20 100644
--- a/arch/arm64/boot/dts/ti/k3-am62x-sk-common.dtsi
+++ b/arch/arm64/boot/dts/ti/k3-am62x-sk-common.dtsi
@@ -163,14 +163,26 @@ &phy_gmii_sel {
&main_pmx0 {
/* First pad number is ALW package and second is AMC package */
- main_uart0_pins_default: main-uart0-default-pins {
+ main_uart0_tx_pins_default: main-uart0-tx-default-pins {
bootph-all;
pinctrl-single,pins = <
- AM62X_IOPAD(0x1c8, PIN_INPUT, 0) /* (D14/A13) UART0_RXD */
AM62X_IOPAD(0x1cc, PIN_OUTPUT, 0) /* (E14/E11) UART0_TXD */
>;
};
+ main_uart0_rx_pins_default: main-uart0-rx-default-pins {
+ bootph-all;
+ pinctrl-single,pins = <
+ AM62X_IOPAD(0x1c8, PIN_INPUT, 0) /* (D14/A13) UART0_RXD */
+ >;
+ };
+
+ main_uart0_rx_pins_wakeup: main-uart0-rx-wakeup-pins {
+ pinctrl-single,pins = <
+ AM62X_IOPAD(0x1c8, PIN_INPUT | PIN_WKUP_EN, 0) /* (D14/A13) UART0_RXD */
+ >;
+ };
+
main_uart1_pins_default: main-uart1-default-pins {
bootph-pre-ram;
pinctrl-single,pins = <
@@ -342,8 +354,12 @@ &wkup_uart0 {
&main_uart0 {
bootph-all;
status = "okay";
- pinctrl-names = "default";
- pinctrl-0 = <&main_uart0_pins_default>;
+ pinctrl-names = "default", "wakeup";
+ pinctrl-0 = <&main_uart0_tx_pins_default>, <&main_uart0_rx_pins_default>;
+ pinctrl-1 = <&main_uart0_tx_pins_default>, <&main_uart0_rx_pins_wakeup>;
+ wakeup-source = <&system_deep_sleep>,
+ <&system_mcu_only>,
+ <&system_standby>;
};
&main_uart1 {
--
2.34.1
^ permalink raw reply related [flat|nested] 9+ messages in thread* Re: [PATCH 1/3] arm64: dts: ti: k3-am62x-sk-common: Enable Main UART wakeup
2025-09-04 21:28 ` [PATCH 1/3] arm64: dts: ti: k3-am62x-sk-common: Enable " Kendall Willis
@ 2025-09-09 8:35 ` Markus Schneider-Pargmann
2025-09-09 8:37 ` Markus Schneider-Pargmann
0 siblings, 1 reply; 9+ messages in thread
From: Markus Schneider-Pargmann @ 2025-09-09 8:35 UTC (permalink / raw)
To: Kendall Willis, nm, vigneshr, kristo, robh, krzk+dt, conor+dt,
linux-arm-kernel, devicetree, linux-kernel
Cc: d-gole, vishalm, sebin.francis, khilman, a-kaur
[-- Attachment #1: Type: text/plain, Size: 2288 bytes --]
On Thu Sep 4, 2025 at 11:28 PM CEST, Kendall Willis wrote:
> The Main UART can resume from suspend to RAM states when PIN_WKUP_EN
> is enabled. Add the necessary pins needed to wakeup the system. Add the
> system idle states that the Main UART can wakeup the system from.
>
> Signed-off-by: Kendall Willis <k-willis@ti.com>
> ---
> .../arm64/boot/dts/ti/k3-am62x-sk-common.dtsi | 24 +++++++++++++++----
> 1 file changed, 20 insertions(+), 4 deletions(-)
>
> diff --git a/arch/arm64/boot/dts/ti/k3-am62x-sk-common.dtsi b/arch/arm64/boot/dts/ti/k3-am62x-sk-common.dtsi
> index 13e1d36123d51..72801cf890d20 100644
> --- a/arch/arm64/boot/dts/ti/k3-am62x-sk-common.dtsi
> +++ b/arch/arm64/boot/dts/ti/k3-am62x-sk-common.dtsi
> @@ -163,14 +163,26 @@ &phy_gmii_sel {
>
> &main_pmx0 {
> /* First pad number is ALW package and second is AMC package */
> - main_uart0_pins_default: main-uart0-default-pins {
> + main_uart0_tx_pins_default: main-uart0-tx-default-pins {
> bootph-all;
> pinctrl-single,pins = <
> - AM62X_IOPAD(0x1c8, PIN_INPUT, 0) /* (D14/A13) UART0_RXD */
> AM62X_IOPAD(0x1cc, PIN_OUTPUT, 0) /* (E14/E11) UART0_TXD */
> >;
> };
>
> + main_uart0_rx_pins_default: main-uart0-rx-default-pins {
> + bootph-all;
> + pinctrl-single,pins = <
> + AM62X_IOPAD(0x1c8, PIN_INPUT, 0) /* (D14/A13) UART0_RXD */
> + >;
> + };
> +
> + main_uart0_rx_pins_wakeup: main-uart0-rx-wakeup-pins {
> + pinctrl-single,pins = <
> + AM62X_IOPAD(0x1c8, PIN_INPUT | PIN_WKUP_EN, 0) /* (D14/A13) UART0_RXD */
> + >;
> + };
> +
> main_uart1_pins_default: main-uart1-default-pins {
> bootph-pre-ram;
> pinctrl-single,pins = <
> @@ -342,8 +354,12 @@ &wkup_uart0 {
> &main_uart0 {
> bootph-all;
> status = "okay";
> - pinctrl-names = "default";
> - pinctrl-0 = <&main_uart0_pins_default>;
> + pinctrl-names = "default", "wakeup";
I think you may need to add this to the DT binding of the uart device
as well.
Best
Markus
> + pinctrl-0 = <&main_uart0_tx_pins_default>, <&main_uart0_rx_pins_default>;
> + pinctrl-1 = <&main_uart0_tx_pins_default>, <&main_uart0_rx_pins_wakeup>;
> + wakeup-source = <&system_deep_sleep>,
> + <&system_mcu_only>,
> + <&system_standby>;
> };
>
> &main_uart1 {
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 289 bytes --]
^ permalink raw reply [flat|nested] 9+ messages in thread* Re: [PATCH 1/3] arm64: dts: ti: k3-am62x-sk-common: Enable Main UART wakeup
2025-09-09 8:35 ` Markus Schneider-Pargmann
@ 2025-09-09 8:37 ` Markus Schneider-Pargmann
2025-09-09 19:03 ` Kendall Willis
0 siblings, 1 reply; 9+ messages in thread
From: Markus Schneider-Pargmann @ 2025-09-09 8:37 UTC (permalink / raw)
To: Markus Schneider-Pargmann, Kendall Willis, nm, vigneshr, kristo,
robh, krzk+dt, conor+dt, linux-arm-kernel, devicetree,
linux-kernel
Cc: d-gole, vishalm, sebin.francis, khilman, a-kaur
[-- Attachment #1: Type: text/plain, Size: 2553 bytes --]
On Tue Sep 9, 2025 at 10:35 AM CEST, Markus Schneider-Pargmann wrote:
> On Thu Sep 4, 2025 at 11:28 PM CEST, Kendall Willis wrote:
>> The Main UART can resume from suspend to RAM states when PIN_WKUP_EN
>> is enabled. Add the necessary pins needed to wakeup the system. Add the
>> system idle states that the Main UART can wakeup the system from.
>>
>> Signed-off-by: Kendall Willis <k-willis@ti.com>
>> ---
>> .../arm64/boot/dts/ti/k3-am62x-sk-common.dtsi | 24 +++++++++++++++----
>> 1 file changed, 20 insertions(+), 4 deletions(-)
>>
>> diff --git a/arch/arm64/boot/dts/ti/k3-am62x-sk-common.dtsi b/arch/arm64/boot/dts/ti/k3-am62x-sk-common.dtsi
>> index 13e1d36123d51..72801cf890d20 100644
>> --- a/arch/arm64/boot/dts/ti/k3-am62x-sk-common.dtsi
>> +++ b/arch/arm64/boot/dts/ti/k3-am62x-sk-common.dtsi
>> @@ -163,14 +163,26 @@ &phy_gmii_sel {
>>
>> &main_pmx0 {
>> /* First pad number is ALW package and second is AMC package */
>> - main_uart0_pins_default: main-uart0-default-pins {
>> + main_uart0_tx_pins_default: main-uart0-tx-default-pins {
>> bootph-all;
>> pinctrl-single,pins = <
>> - AM62X_IOPAD(0x1c8, PIN_INPUT, 0) /* (D14/A13) UART0_RXD */
>> AM62X_IOPAD(0x1cc, PIN_OUTPUT, 0) /* (E14/E11) UART0_TXD */
>> >;
>> };
>>
>> + main_uart0_rx_pins_default: main-uart0-rx-default-pins {
>> + bootph-all;
>> + pinctrl-single,pins = <
>> + AM62X_IOPAD(0x1c8, PIN_INPUT, 0) /* (D14/A13) UART0_RXD */
>> + >;
>> + };
>> +
>> + main_uart0_rx_pins_wakeup: main-uart0-rx-wakeup-pins {
>> + pinctrl-single,pins = <
>> + AM62X_IOPAD(0x1c8, PIN_INPUT | PIN_WKUP_EN, 0) /* (D14/A13) UART0_RXD */
>> + >;
>> + };
>> +
>> main_uart1_pins_default: main-uart1-default-pins {
>> bootph-pre-ram;
>> pinctrl-single,pins = <
>> @@ -342,8 +354,12 @@ &wkup_uart0 {
>> &main_uart0 {
>> bootph-all;
>> status = "okay";
>> - pinctrl-names = "default";
>> - pinctrl-0 = <&main_uart0_pins_default>;
>> + pinctrl-names = "default", "wakeup";
>
> I think you may need to add this to the DT binding of the uart device
> as well.
Nevermind, I just saw your other series, can you please mention the
other series as a dependency in the cover letter?
>
> Best
> Markus
>
>> + pinctrl-0 = <&main_uart0_tx_pins_default>, <&main_uart0_rx_pins_default>;
>> + pinctrl-1 = <&main_uart0_tx_pins_default>, <&main_uart0_rx_pins_wakeup>;
>> + wakeup-source = <&system_deep_sleep>,
>> + <&system_mcu_only>,
>> + <&system_standby>;
>> };
>>
>> &main_uart1 {
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 289 bytes --]
^ permalink raw reply [flat|nested] 9+ messages in thread* Re: [PATCH 1/3] arm64: dts: ti: k3-am62x-sk-common: Enable Main UART wakeup
2025-09-09 8:37 ` Markus Schneider-Pargmann
@ 2025-09-09 19:03 ` Kendall Willis
0 siblings, 0 replies; 9+ messages in thread
From: Kendall Willis @ 2025-09-09 19:03 UTC (permalink / raw)
To: Markus Schneider-Pargmann, nm, vigneshr, kristo, robh, krzk+dt,
conor+dt, linux-arm-kernel, devicetree, linux-kernel
Cc: d-gole, vishalm, sebin.francis, khilman, a-kaur
On 9/9/25 03:37, Markus Schneider-Pargmann wrote:
> On Tue Sep 9, 2025 at 10:35 AM CEST, Markus Schneider-Pargmann wrote:
>> On Thu Sep 4, 2025 at 11:28 PM CEST, Kendall Willis wrote:
>>> The Main UART can resume from suspend to RAM states when PIN_WKUP_EN
>>> is enabled. Add the necessary pins needed to wakeup the system. Add the
>>> system idle states that the Main UART can wakeup the system from.
>>>
>>> Signed-off-by: Kendall Willis <k-willis@ti.com>
>>> ---
>>> .../arm64/boot/dts/ti/k3-am62x-sk-common.dtsi | 24 +++++++++++++++----
>>> 1 file changed, 20 insertions(+), 4 deletions(-)
>>>
>>> diff --git a/arch/arm64/boot/dts/ti/k3-am62x-sk-common.dtsi b/arch/arm64/boot/dts/ti/k3-am62x-sk-common.dtsi
>>> index 13e1d36123d51..72801cf890d20 100644
>>> --- a/arch/arm64/boot/dts/ti/k3-am62x-sk-common.dtsi
>>> +++ b/arch/arm64/boot/dts/ti/k3-am62x-sk-common.dtsi
>>> @@ -163,14 +163,26 @@ &phy_gmii_sel {
>>>
>>> &main_pmx0 {
>>> /* First pad number is ALW package and second is AMC package */
>>> - main_uart0_pins_default: main-uart0-default-pins {
>>> + main_uart0_tx_pins_default: main-uart0-tx-default-pins {
>>> bootph-all;
>>> pinctrl-single,pins = <
>>> - AM62X_IOPAD(0x1c8, PIN_INPUT, 0) /* (D14/A13) UART0_RXD */
>>> AM62X_IOPAD(0x1cc, PIN_OUTPUT, 0) /* (E14/E11) UART0_TXD */
>>> >;
>>> };
>>>
>>> + main_uart0_rx_pins_default: main-uart0-rx-default-pins {
>>> + bootph-all;
>>> + pinctrl-single,pins = <
>>> + AM62X_IOPAD(0x1c8, PIN_INPUT, 0) /* (D14/A13) UART0_RXD */
>>> + >;
>>> + };
>>> +
>>> + main_uart0_rx_pins_wakeup: main-uart0-rx-wakeup-pins {
>>> + pinctrl-single,pins = <
>>> + AM62X_IOPAD(0x1c8, PIN_INPUT | PIN_WKUP_EN, 0) /* (D14/A13) UART0_RXD */
>>> + >;
>>> + };
>>> +
>>> main_uart1_pins_default: main-uart1-default-pins {
>>> bootph-pre-ram;
>>> pinctrl-single,pins = <
>>> @@ -342,8 +354,12 @@ &wkup_uart0 {
>>> &main_uart0 {
>>> bootph-all;
>>> status = "okay";
>>> - pinctrl-names = "default";
>>> - pinctrl-0 = <&main_uart0_pins_default>;
>>> + pinctrl-names = "default", "wakeup";
>>
>> I think you may need to add this to the DT binding of the uart device
>> as well.
>
> Nevermind, I just saw your other series, can you please mention the
> other series as a dependency in the cover letter?
Yes, I will make the dependency clear in the cover letter.
>
>>
>> Best
>> Markus
>>
>>> + pinctrl-0 = <&main_uart0_tx_pins_default>, <&main_uart0_rx_pins_default>;
>>> + pinctrl-1 = <&main_uart0_tx_pins_default>, <&main_uart0_rx_pins_wakeup>;
>>> + wakeup-source = <&system_deep_sleep>,
>>> + <&system_mcu_only>,
>>> + <&system_standby>;
>>> };
>>>
>>> &main_uart1 {
>
^ permalink raw reply [flat|nested] 9+ messages in thread
* [PATCH 2/3] arm64: dts: ti: k3-am62a7-sk: Enable Main UART wakeup
2025-09-04 21:28 [PATCH 0/3] arm64: dts: ti: k3-am62: Support Main UART wakeup Kendall Willis
2025-09-04 21:28 ` [PATCH 1/3] arm64: dts: ti: k3-am62x-sk-common: Enable " Kendall Willis
@ 2025-09-04 21:28 ` Kendall Willis
2025-09-04 21:28 ` [PATCH 3/3] arm64: dts: ti: k3-am62p5-sk: " Kendall Willis
` (2 subsequent siblings)
4 siblings, 0 replies; 9+ messages in thread
From: Kendall Willis @ 2025-09-04 21:28 UTC (permalink / raw)
To: nm, vigneshr, kristo, robh, krzk+dt, conor+dt, linux-arm-kernel,
devicetree, linux-kernel
Cc: d-gole, vishalm, sebin.francis, msp, khilman, a-kaur, k-willis
The Main UART can resume from suspend to RAM states when PIN_WKUP_EN
is enabled. Add the necessary pins needed to wakeup the system. Add the
system idle states that the Main UART can wakeup the system from.
Signed-off-by: Kendall Willis <k-willis@ti.com>
---
arch/arm64/boot/dts/ti/k3-am62a7-sk.dts | 24 ++++++++++++++++++++----
1 file changed, 20 insertions(+), 4 deletions(-)
diff --git a/arch/arm64/boot/dts/ti/k3-am62a7-sk.dts b/arch/arm64/boot/dts/ti/k3-am62a7-sk.dts
index bceead5e288e6..1c0ef563750c8 100644
--- a/arch/arm64/boot/dts/ti/k3-am62a7-sk.dts
+++ b/arch/arm64/boot/dts/ti/k3-am62a7-sk.dts
@@ -294,14 +294,26 @@ AM62AX_IOPAD(0x078, PIN_OUTPUT, 1) /* (T21) GPMC0_AD15.VOUT0_DATA23 */
>;
};
- main_uart0_pins_default: main-uart0-default-pins {
+ main_uart0_tx_pins_default: main-uart0-tx-default-pins {
pinctrl-single,pins = <
- AM62AX_IOPAD(0x1c8, PIN_INPUT, 0) /* (E14) UART0_RXD */
AM62AX_IOPAD(0x1cc, PIN_OUTPUT, 0) /* (D15) UART0_TXD */
>;
bootph-all;
};
+ main_uart0_rx_pins_default: main-uart0-rx-default-pins {
+ pinctrl-single,pins = <
+ AM62AX_IOPAD(0x1c8, PIN_INPUT, 0) /* (E14) UART0_RXD */
+ >;
+ bootph-all;
+ };
+
+ main_uart0_rx_pins_wakeup: main-uart0-rx-wakeup-pins {
+ pinctrl-single,pins = <
+ AM62AX_IOPAD(0x1c8, PIN_INPUT | PIN_WKUP_EN, 0) /* (E14) UART0_RXD */
+ >;
+ };
+
main_uart1_pins_default: main-uart1-default-pins {
pinctrl-single,pins = <
AM62AX_IOPAD(0x01ac, PIN_INPUT, 2) /* (B21) MCASP0_AFSR.UART1_RXD */
@@ -701,8 +713,12 @@ &main_gpio_intr {
&main_uart0 {
status = "okay";
- pinctrl-names = "default";
- pinctrl-0 = <&main_uart0_pins_default>;
+ pinctrl-names = "default", "wakeup";
+ pinctrl-0 = <&main_uart0_tx_pins_default>, <&main_uart0_rx_pins_default>;
+ pinctrl-1 = <&main_uart0_tx_pins_default>, <&main_uart0_rx_pins_wakeup>;
+ wakeup-source = <&system_deep_sleep>,
+ <&system_mcu_only>,
+ <&system_standby>;
bootph-all;
};
--
2.34.1
^ permalink raw reply related [flat|nested] 9+ messages in thread* [PATCH 3/3] arm64: dts: ti: k3-am62p5-sk: Enable Main UART wakeup
2025-09-04 21:28 [PATCH 0/3] arm64: dts: ti: k3-am62: Support Main UART wakeup Kendall Willis
2025-09-04 21:28 ` [PATCH 1/3] arm64: dts: ti: k3-am62x-sk-common: Enable " Kendall Willis
2025-09-04 21:28 ` [PATCH 2/3] arm64: dts: ti: k3-am62a7-sk: " Kendall Willis
@ 2025-09-04 21:28 ` Kendall Willis
2025-09-05 2:32 ` [PATCH 0/3] arm64: dts: ti: k3-am62: Support " Rob Herring (Arm)
2025-09-09 22:41 ` Kendall Willis
4 siblings, 0 replies; 9+ messages in thread
From: Kendall Willis @ 2025-09-04 21:28 UTC (permalink / raw)
To: nm, vigneshr, kristo, robh, krzk+dt, conor+dt, linux-arm-kernel,
devicetree, linux-kernel
Cc: d-gole, vishalm, sebin.francis, msp, khilman, a-kaur, k-willis
The Main UART can resume from suspend to RAM states when PIN_WKUP_EN
is enabled. Add the necessary pins needed to wakeup the system. Add the
system idle states that the Main UART can wakeup the system from.
Signed-off-by: Kendall Willis <k-willis@ti.com>
---
arch/arm64/boot/dts/ti/k3-am62p5-sk.dts | 24 ++++++++++++++++++++----
1 file changed, 20 insertions(+), 4 deletions(-)
diff --git a/arch/arm64/boot/dts/ti/k3-am62p5-sk.dts b/arch/arm64/boot/dts/ti/k3-am62p5-sk.dts
index 899da7896563b..1857437eb9c34 100644
--- a/arch/arm64/boot/dts/ti/k3-am62p5-sk.dts
+++ b/arch/arm64/boot/dts/ti/k3-am62p5-sk.dts
@@ -340,14 +340,26 @@ AM62PX_IOPAD(0x0164, PIN_INPUT, 0) /* (A20) RGMII2_TX_CTL */
bootph-all;
};
- main_uart0_pins_default: main-uart0-default-pins {
+ main_uart0_tx_pins_default: main-uart0-tx-default-pins {
pinctrl-single,pins = <
- AM62PX_IOPAD(0x1c8, PIN_INPUT, 0) /* (A22) UART0_RXD */
AM62PX_IOPAD(0x1cc, PIN_OUTPUT, 0) /* (B22) UART0_TXD */
>;
bootph-all;
};
+ main_uart0_rx_pins_default: main-uart0-rx-default-pins {
+ pinctrl-single,pins = <
+ AM62PX_IOPAD(0x1c8, PIN_INPUT, 0) /* (A22) UART0_RXD */
+ >;
+ bootph-all;
+ };
+
+ main_uart0_rx_pins_wakeup: main-uart0-rx-wakeup-pins {
+ pinctrl-single,pins = <
+ AM62PX_IOPAD(0x1c8, PIN_INPUT | PIN_WKUP_EN, 0) /* (A22) UART0_RXD */
+ >;
+ };
+
main_uart1_pins_default: main-uart1-default-pins {
pinctrl-single,pins = <
AM62PX_IOPAD(0x0194, PIN_INPUT, 2) /* (D25) MCASP0_AXR3.UART1_CTSn */
@@ -738,8 +750,12 @@ &mcu_r5fss0_core0 {
};
&main_uart0 {
- pinctrl-names = "default";
- pinctrl-0 = <&main_uart0_pins_default>;
+ pinctrl-names = "default", "wakeup";
+ pinctrl-0 = <&main_uart0_tx_pins_default>, <&main_uart0_rx_pins_default>;
+ pinctrl-1 = <&main_uart0_tx_pins_default>, <&main_uart0_rx_pins_wakeup>;
+ wakeup-source = <&system_deep_sleep>,
+ <&system_mcu_only>,
+ <&system_standby>;
status = "okay";
bootph-all;
};
--
2.34.1
^ permalink raw reply related [flat|nested] 9+ messages in thread* Re: [PATCH 0/3] arm64: dts: ti: k3-am62: Support Main UART wakeup
2025-09-04 21:28 [PATCH 0/3] arm64: dts: ti: k3-am62: Support Main UART wakeup Kendall Willis
` (2 preceding siblings ...)
2025-09-04 21:28 ` [PATCH 3/3] arm64: dts: ti: k3-am62p5-sk: " Kendall Willis
@ 2025-09-05 2:32 ` Rob Herring (Arm)
2025-09-09 22:41 ` Kendall Willis
4 siblings, 0 replies; 9+ messages in thread
From: Rob Herring (Arm) @ 2025-09-05 2:32 UTC (permalink / raw)
To: Kendall Willis
Cc: vishalm, kristo, conor+dt, linux-arm-kernel, khilman, d-gole,
vigneshr, a-kaur, linux-kernel, devicetree, msp, sebin.francis,
krzk+dt, nm
On Thu, 04 Sep 2025 16:28:24 -0500, Kendall Willis wrote:
> This series adds wakeup support for the Main UART in the device tree of
> the TI AM62 family of devices. It defines the specific pins and pinctrl
> states needed to wakeup the system from the Main UART via I/O
> daisy-chaining. The wakeup-source property is configured to describe the
> low power modes the system can wakeup from using the Main UART.
>
> Dependencies
> ------------
> This series is dependent on the following series [1] to be merged into
> the kernel. The series adds the system idle states that are available on
> the SoCs. The system idle states are used when configuring the
> wakeup-source property.
>
> This series is also dependent on the following patch [2] to be merged
> into the kernel. The patch integrates the PIN_WKUP_EN macro which
> enables the WKUP_EN bit.
>
> Implementation
> --------------
> This series is intended to be implemented along with the following
> series:
>
> 1. "pmdomain: ti_sci: Handle wakeup constraint if device has pinctrl
> wakeup state": Patch which skips setting constraints for wakeup sources
> that use pinctrl state 'wakeup'.
>
> 2. "serial: 8250: omap: Add wakeup support": Implements
> wakeup from the UARTs for TI K3 SoCs
>
> 3. "arm64: dts: ti: k3-am62: Support Main UART wakeup": (this series)
> implements the functionality to wakeup the system from the Main UART
>
> Testing
> -------
> Tested on a SK-AM62B-P1 board with all series and dependencies
> implemented. Suspend/resume verified with the Main UART wakeup source
> by entering a keypress on the console.
>
> [1] https://lore.kernel.org/linux-arm-kernel/20250812-topic-am62-dt-partialio-v6-15-v2-2-25352364a0ac@baylibre.com/
> [2] https://lore.kernel.org/all/20250904112538.529857-4-a-kaur@ti.com/
>
> Kendall Willis (3):
> arm64: dts: ti: k3-am62x-sk-common: Enable Main UART wakeup
> arm64: dts: ti: k3-am62a7-sk: Enable Main UART wakeup
> arm64: dts: ti: k3-am62p5-sk: Enable Main UART wakeup
>
> arch/arm64/boot/dts/ti/k3-am62a7-sk.dts | 24 +++++++++++++++----
> arch/arm64/boot/dts/ti/k3-am62p5-sk.dts | 24 +++++++++++++++----
> .../arm64/boot/dts/ti/k3-am62x-sk-common.dtsi | 24 +++++++++++++++----
> 3 files changed, 60 insertions(+), 12 deletions(-)
>
>
> base-commit: 4ac65880ebca1b68495bd8704263b26c050ac010
> --
> 2.34.1
>
>
>
My bot found new DTB warnings on the .dts files added or changed in this
series.
Some warnings may be from an existing SoC .dtsi. Or perhaps the warnings
are fixed by another series. Ultimately, it is up to the platform
maintainer whether these warnings are acceptable or not. No need to reply
unless the platform maintainer has comments.
If you already ran DT checks and didn't see these error(s), then
make sure dt-schema is up to date:
pip3 install dtschema --upgrade
This patch series was applied (using b4) to base:
Base: using specified base-commit 4ac65880ebca1b68495bd8704263b26c050ac010
If this is not the correct base, please add 'base-commit' tag
(or use b4 which does this automatically)
New warnings running 'make CHECK_DTBS=y for arch/arm64/boot/dts/ti/' for 20250904212827.3730314-1-k-willis@ti.com:
Lexical error: arch/arm64/boot/dts/ti/k3-am62a7-sk.dts:313.71-82 Unexpected 'PIN_WKUP_EN'
FATAL ERROR: Syntax error parsing input tree
make[3]: *** [scripts/Makefile.dtbs:132: arch/arm64/boot/dts/ti/k3-am62a7-sk.dtb] Error 1
make[2]: *** [scripts/Makefile.build:556: arch/arm64/boot/dts/ti] Error 2
make[2]: Target 'arch/arm64/boot/dts/ti/k3-am62a7-sk.dtb' not remade because of errors.
Lexical error: arch/arm64/boot/dts/ti/k3-am62p5-sk.dts:359.71-82 Unexpected 'PIN_WKUP_EN'
FATAL ERROR: Syntax error parsing input tree
make[3]: *** [scripts/Makefile.dtbs:132: arch/arm64/boot/dts/ti/k3-am62p5-sk.dtb] Error 1
make[2]: *** [scripts/Makefile.build:556: arch/arm64/boot/dts/ti] Error 2
make[2]: Target 'arch/arm64/boot/dts/ti/k3-am62p5-sk.dtb' not remade because of errors.
make[1]: *** [/home/rob/proj/linux-dt-testing/Makefile:1478: ti/k3-am62p5-sk.dtb] Error 2
make[1]: *** [/home/rob/proj/linux-dt-testing/Makefile:1478: ti/k3-am62a7-sk.dtb] Error 2
Lexical error: arch/arm64/boot/dts/ti/k3-am62x-sk-common.dtsi:182.71-82 Unexpected 'PIN_WKUP_EN'
FATAL ERROR: Syntax error parsing input tree
make[3]: *** [scripts/Makefile.dtbs:132: arch/arm64/boot/dts/ti/k3-am62-lp-sk.dtb] Error 1
make[2]: *** [scripts/Makefile.build:556: arch/arm64/boot/dts/ti] Error 2
make[2]: Target 'arch/arm64/boot/dts/ti/k3-am62-lp-sk.dtb' not remade because of errors.
make[1]: *** [/home/rob/proj/linux-dt-testing/Makefile:1478: ti/k3-am62-lp-sk.dtb] Error 2
Lexical error: arch/arm64/boot/dts/ti/k3-am62x-sk-common.dtsi:182.71-82 Unexpected 'PIN_WKUP_EN'
FATAL ERROR: Syntax error parsing input tree
make[3]: *** [scripts/Makefile.dtbs:132: arch/arm64/boot/dts/ti/k3-am625-sk.dtb] Error 1
make[2]: *** [scripts/Makefile.build:556: arch/arm64/boot/dts/ti] Error 2
make[2]: Target 'arch/arm64/boot/dts/ti/k3-am625-sk.dtb' not remade because of errors.
make[1]: *** [/home/rob/proj/linux-dt-testing/Makefile:1478: ti/k3-am625-sk.dtb] Error 2
make: *** [Makefile:248: __sub-make] Error 2
make: Target 'ti/k3-am625-verdin-wifi-ivy.dtb' not remade because of errors.
make: Target 'ti/k3-am62p5-verdin-wifi-ivy.dtb' not remade because of errors.
make: Target 'ti/k3-am625-verdin-wifi-dahlia.dtb' not remade because of errors.
make: Target 'ti/k3-j721e-common-proc-board.dtb' not remade because of errors.
make: Target 'ti/k3-am625-verdin-wifi-dev.dtb' not remade because of errors.
make: Target 'ti/k3-am642-evm.dtb' not remade because of errors.
make: Target 'ti/k3-am625-verdin-wifi-mallow.dtb' not remade because of errors.
make: Target 'ti/k3-am625-verdin-nonwifi-dahlia.dtb' not remade because of errors.
make: Target 'ti/k3-am62d2-evm.dtb' not remade because of errors.
make: Target 'ti/k3-j742s2-evm.dtb' not remade because of errors.
make: Target 'ti/k3-am642-hummingboard-t.dtb' not remade because of errors.
make: Target 'ti/k3-am625-beagleplay.dtb' not remade because of errors.
make: Target 'ti/k3-am625-verdin-nonwifi-yavia.dtb' not remade because of errors.
make: Target 'ti/k3-am6528-iot2050-basic-pg2.dtb' not remade because of errors.
make: Target 'ti/k3-am62p5-verdin-wifi-mallow.dtb' not remade because of errors.
make: Target 'ti/k3-am68-sk-base-board.dtb' not remade because of errors.
make: Target 'ti/k3-am62p5-sk.dtb' not remade because of errors.
make: Target 'ti/k3-am6528-iot2050-basic.dtb' not remade because of errors.
make: Target 'ti/k3-am62-pocketbeagle2.dtb' not remade because of errors.
make: Target 'ti/k3-am6548-iot2050-advanced-m2.dtb' not remade because of errors.
make: Target 'ti/k3-am654-base-board.dtb' not remade because of errors.
make: Target 'ti/k3-am6548-iot2050-advanced.dtb' not remade because of errors.
make: Target 'ti/k3-am62a7-phyboard-lyra-rdk.dtb' not remade because of errors.
make: Target 'ti/k3-am62a7-sk.dtb' not remade because of errors.
make: Target 'ti/k3-am625-verdin-nonwifi-dev.dtb' not remade because of errors.
make: Target 'ti/k3-am62p5-verdin-nonwifi-mallow.dtb' not remade because of errors.
make: Target 'ti/k3-j722s-evm.dtb' not remade because of errors.
make: Target 'ti/k3-am62p5-verdin-nonwifi-dahlia.dtb' not remade because of errors.
make: Target 'ti/k3-am62p5-verdin-nonwifi-ivy.dtb' not remade because of errors.
make: Target 'ti/k3-j721e-beagleboneai64.dtb' not remade because of errors.
make: Target 'ti/k3-am62p5-verdin-nonwifi-dev.dtb' not remade because of errors.
make: Target 'ti/k3-am642-phyboard-electra-rdk.dtb' not remade because of errors.
make: Target 'ti/k3-am69-sk.dtb' not remade because of errors.
make: Target 'ti/k3-am62p5-verdin-wifi-dahlia.dtb' not remade because of errors.
make: Target 'ti/k3-am6548-iot2050-advanced-pg2.dtb' not remade because of errors.
make: Target 'ti/k3-am68-phyboard-izar.dtb' not remade because of errors.
make: Target 'ti/k3-am642-hummingboard-t-pcie.dtb' not remade because of errors.
make: Target 'ti/k3-j7200-common-proc-board.dtb' not remade because of errors.
make: Target 'ti/k3-am62-lp-sk.dtb' not remade because of errors.
make: Target 'ti/k3-am625-verdin-wifi-yavia.dtb' not remade because of errors.
make: Target 'ti/k3-j721s2-common-proc-board.dtb' not remade because of errors.
make: Target 'ti/k3-am642-tqma64xxl-mbax4xxl.dtb' not remade because of errors.
make: Target 'ti/k3-am67a-beagley-ai.dtb' not remade because of errors.
make: Target 'ti/k3-am62p5-verdin-nonwifi-yavia.dtb' not remade because of errors.
make: Target 'ti/k3-am642-hummingboard-t-usb3.dtb' not remade because of errors.
make: Target 'ti/k3-am642-sk.dtb' not remade because of errors.
make: Target 'ti/k3-am6548-iot2050-advanced-sm.dtb' not remade because of errors.
make: Target 'ti/k3-am625-verdin-nonwifi-mallow.dtb' not remade because of errors.
make: Target 'ti/k3-am625-phyboard-lyra-rdk.dtb' not remade because of errors.
make: Target 'ti/k3-am62p5-verdin-wifi-yavia.dtb' not remade because of errors.
make: Target 'ti/k3-am625-verdin-nonwifi-ivy.dtb' not remade because of errors.
make: Target 'ti/k3-j784s4-evm.dtb' not remade because of errors.
make: Target 'ti/k3-am625-sk.dtb' not remade because of errors.
make: Target 'ti/k3-am62p5-verdin-wifi-dev.dtb' not remade because of errors.
make: Target 'ti/k3-j721e-sk.dtb' not remade because of errors.
^ permalink raw reply [flat|nested] 9+ messages in thread* Re: [PATCH 0/3] arm64: dts: ti: k3-am62: Support Main UART wakeup
2025-09-04 21:28 [PATCH 0/3] arm64: dts: ti: k3-am62: Support Main UART wakeup Kendall Willis
` (3 preceding siblings ...)
2025-09-05 2:32 ` [PATCH 0/3] arm64: dts: ti: k3-am62: Support " Rob Herring (Arm)
@ 2025-09-09 22:41 ` Kendall Willis
4 siblings, 0 replies; 9+ messages in thread
From: Kendall Willis @ 2025-09-09 22:41 UTC (permalink / raw)
To: nm, vigneshr, kristo, robh, krzk+dt, conor+dt, linux-arm-kernel,
devicetree, linux-kernel
Cc: d-gole, vishalm, sebin.francis, msp, khilman, a-kaur
On 9/4/25 16:28, Kendall Willis wrote:
> This series adds wakeup support for the Main UART in the device tree of
> the TI AM62 family of devices. It defines the specific pins and pinctrl
> states needed to wakeup the system from the Main UART via I/O
> daisy-chaining. The wakeup-source property is configured to describe the
> low power modes the system can wakeup from using the Main UART.
>
> Dependencies
> ------------
> This series is dependent on the following series [1] to be merged into
> the kernel. The series adds the system idle states that are available on
> the SoCs. The system idle states are used when configuring the
> wakeup-source property.
>
> This series is also dependent on the following patch [2] to be merged
> into the kernel. The patch integrates the PIN_WKUP_EN macro which
> enables the WKUP_EN bit.
Series also depends on this series [1] for DT bindings of pinctrl.
[1] https://lore.kernel.org/all/20250904212455.3729029-1-k-willis@ti.com/
>
> Implementation
> --------------
> This series is intended to be implemented along with the following
> series:
>
> 1. "pmdomain: ti_sci: Handle wakeup constraint if device has pinctrl
> wakeup state": Patch which skips setting constraints for wakeup sources
> that use pinctrl state 'wakeup'.
>
> 2. "serial: 8250: omap: Add wakeup support": Implements
> wakeup from the UARTs for TI K3 SoCs
>
> 3. "arm64: dts: ti: k3-am62: Support Main UART wakeup": (this series)
> implements the functionality to wakeup the system from the Main UART
>
> Testing
> -------
> Tested on a SK-AM62B-P1 board with all series and dependencies
> implemented. Suspend/resume verified with the Main UART wakeup source
> by entering a keypress on the console.
>
> [1] https://lore.kernel.org/linux-arm-kernel/20250812-topic-am62-dt-partialio-v6-15-v2-2-25352364a0ac@baylibre.com/
> [2] https://lore.kernel.org/all/20250904112538.529857-4-a-kaur@ti.com/
>
> Kendall Willis (3):
> arm64: dts: ti: k3-am62x-sk-common: Enable Main UART wakeup
> arm64: dts: ti: k3-am62a7-sk: Enable Main UART wakeup
> arm64: dts: ti: k3-am62p5-sk: Enable Main UART wakeup
>
> arch/arm64/boot/dts/ti/k3-am62a7-sk.dts | 24 +++++++++++++++----
> arch/arm64/boot/dts/ti/k3-am62p5-sk.dts | 24 +++++++++++++++----
> .../arm64/boot/dts/ti/k3-am62x-sk-common.dtsi | 24 +++++++++++++++----
> 3 files changed, 60 insertions(+), 12 deletions(-)
>
>
> base-commit: 4ac65880ebca1b68495bd8704263b26c050ac010
^ permalink raw reply [flat|nested] 9+ messages in thread