[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20260105135202.vnamexwl3afdt4cw@deferral>
Date: Mon, 5 Jan 2026 07:52:02 -0600
From: Nishanth Menon <nm@...com>
To: Kendall Willis <k-willis@...com>
CC: Vignesh Raghavendra <vigneshr@...com>, Tero Kristo <kristo@...nel.org>,
Rob Herring <robh@...nel.org>, Krzysztof Kozlowski <krzk+dt@...nel.org>,
Conor Dooley <conor+dt@...nel.org>, <d-gole@...com>, <vishalm@...com>,
<sebin.francis@...com>, <msp@...libre.com>, <khilman@...libre.com>,
<a-kaur@...com>, <s-kochidanadu@...com>,
<linux-arm-kernel@...ts.infradead.org>, <devicetree@...r.kernel.org>,
<linux-kernel@...r.kernel.org>
Subject: Re: [PATCH v2 4/5] arm64: dts: ti: k3-am62p5-sk: Enable Main UART
wakeup
On 20:38-20251230, 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.
Is the tx and rx pin register states both lost? I wonder why during
"wakeup" we set PIN_WKUP_EN ? is'nt that supposed to be set while
entering "suspend" state?
if the tx pin register state is not lost, then all we need to do is
play with the rx pin state (and leave pinctrl-0 as is)?
>
> Signed-off-by: Kendall Willis <k-willis@...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 ef719c6334fc094f01d9e8185992f2f58320e17d..96bba65f4f16792834567324db6f7f2bdee7bc06 100644
> --- a/arch/arm64/boot/dts/ti/k3-am62p5-sk.dts
> +++ b/arch/arm64/boot/dts/ti/k3-am62p5-sk.dts
> @@ -328,14 +328,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 */
> @@ -692,8 +704,12 @@ partition@...0000 {
> };
>
> &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
>
--
Regards,
Nishanth Menon
Key (0xDDB5849D1736249D) / Fingerprint: F8A2 8693 54EB 8232 17A3 1A34 DDB5 849D 1736 249D
https://ti.com/opensource
Powered by blists - more mailing lists