arm64: dts: ti: k3-am62-lp-sk: Set wakeup-source system-states

The CANUART pins of mcu_mcan0, mcu_mcan1, mcu_uart0 and wkup_uart0 are
powered during Partial-IO and I/O Only + DDR and are capable of waking
up the system in these states. Specify the states in which these units
can do a wakeup on this board.

Note that the UARTs are not capable of wakeup in Partial-IO because of
of a UART mux on the board not being powered during Partial-IO. As I/O
Only + DDR is not supported on AM62x, the UARTs are not added in this
patch.

Add pincontrol definitions for mcu_mcan0 and mcu_mcan1 for wakeup from
Partial-IO. Add these as wakeup pinctrl entries for both devices.

Signed-off-by: Markus Schneider-Pargmann (TI.com) <msp@baylibre.com>
Link: https://patch.msgid.link/20251103-topic-am62-dt-partialio-v6-15-v5-4-b8d9ff5f2742@baylibre.com
Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
This commit is contained in:
Markus Schneider-Pargmann (TI.com)
2025-11-03 13:39:31 +01:00
committed by Vignesh Raghavendra
parent 4060cf6015
commit 1f2f34b619

View File

@@ -276,3 +276,63 @@
&gpmc0 {
ranges = <0 0 0x00 0x51000000 0x01000000>; /* CS0 space. Min partition = 16MB */
};
&mcu_mcan0 {
pinctrl-names = "default", "wakeup";
pinctrl-0 = <&mcu_mcan0_tx_pins_default>, <&mcu_mcan0_rx_pins_default>;
pinctrl-1 = <&mcu_mcan0_tx_pins_default>, <&mcu_mcan0_rx_pins_wakeup>;
wakeup-source = <&system_partial_io>,
<&system_deep_sleep>,
<&system_mcu_only>,
<&system_standby>;
status = "okay";
};
&mcu_mcan1 {
pinctrl-names = "default", "wakeup";
pinctrl-0 = <&mcu_mcan1_tx_pins_default>, <&mcu_mcan1_rx_pins_default>;
pinctrl-1 = <&mcu_mcan1_tx_pins_default>, <&mcu_mcan1_rx_pins_wakeup>;
wakeup-source = <&system_partial_io>,
<&system_deep_sleep>,
<&system_mcu_only>,
<&system_standby>;
status = "okay";
};
&mcu_pmx0 {
mcu_mcan0_tx_pins_default: mcu-mcan0-tx-default-pins {
pinctrl-single,pins = <
AM62X_IOPAD(0x034, PIN_OUTPUT, 0) /* (D6) MCU_MCAN0_TX */
>;
};
mcu_mcan0_rx_pins_default: mcu-mcan0-rx-default-pins {
pinctrl-single,pins = <
AM62X_IOPAD(0x038, PIN_INPUT, 0) /* (B3) MCU_MCAN0_RX */
>;
};
mcu_mcan0_rx_pins_wakeup: mcu-mcan0-rx-wakeup-pins {
pinctrl-single,pins = <
AM62X_IOPAD(0x038, PIN_INPUT | PIN_WKUP_EN, 0) /* (B3) MCU_MCAN0_RX */
>;
};
mcu_mcan1_tx_pins_default: mcu-mcan1-tx-default-pins {
pinctrl-single,pins = <
AM62X_IOPAD(0x03c, PIN_OUTPUT, 0) /* (E5) MCU_MCAN1_TX */
>;
};
mcu_mcan1_rx_pins_default: mcu-mcan1-rx-default-pins {
pinctrl-single,pins = <
AM62X_IOPAD(0x040, PIN_INPUT, 0) /* (D4) MCU_MCAN1_RX */
>;
};
mcu_mcan1_rx_pins_wakeup: mcu-mcan1-rx-wakeup-pins {
pinctrl-single,pins = <
AM62X_IOPAD(0x040, PIN_INPUT | PIN_WKUP_EN, 0) /* (D4) MCU_MCAN1_RX */
>;
};
};