[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <DD7Q7NSX0HGG.GTQPPTS7H1FB@baylibre.com>
Date: Thu, 02 Oct 2025 11:24:38 +0200
From: "Markus Schneider-Pargmann" <msp@...libre.com>
To: "Markus Schneider-Pargmann (TI.com)" <msp@...libre.com>, "Nishanth
Menon" <nm@...com>, "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>
Cc: <linux-arm-kernel@...ts.infradead.org>, <devicetree@...r.kernel.org>,
<linux-kernel@...r.kernel.org>, "Vishal Mahaveer" <vishalm@...com>, "Kevin
Hilman" <khilman@...libre.com>, "Dhruva Gole" <d-gole@...com>, "Sebin
Francis" <sebin.francis@...com>, "Kendall Willis" <k-willis@...com>,
"Akashdeep Kaur" <a-kaur@...com>
Subject: Re: [PATCH v3 0/6] arm64: dts: ti: k3-am62: Add wakeup-sources for
low power modes
On Wed Oct 1, 2025 at 4:34 PM CEST, Markus Schneider-Pargmann (TI.com) wrote:
> Hi,
>
> This series adds devicetree changes needed for Partial-IO support on TI
> am62, am62a, and am62p SoCs. It defines system states for various low
> power modes and configures the wakeup-sources for devices in the CANUART
> group. Depending on the SoC and board details, some low power modes may
> not be available, so the wakeup-sources are described in the board
> files. The series also adds the necessary pinctrl settings required for
> proper wakeup functionality.
>
> Partial-IO Overview
> ------------------
> Partial-IO is a low power system state in which nearly everything is
> turned off except the pins of the CANUART group (mcu_mcan0, mcu_mcan1,
> wkup_uart0 and mcu_uart0). These devices can trigger a wakeup of the
> system on pin activity. Note that this does not resume the system as the
> DDR is off as well. So this state can be considered a power-off state
> with wakeup capabilities.
>
> A documentation can also be found in section 6.2.4 in the TRM:
> https://www.ti.com/lit/pdf/spruiv7
>
> Implementation Details
> ----------------------
> The complete Partial-IO feature requires three coordinated series, each
> handling a different aspect of the implementation:
I missed updating the lore links, here they are:
> 1. m_can driver series: Implements device-specific wakeup functionality
> for m_can devices, allowing them to be set as wakeup sources.
> https://gitlab.baylibre.com/msp8/linux/-/tree/topic/mcan-wakeup-source/v6.17?ref_type=heads
> https://lore.kernel.org/r/20250812-topic-mcan-wakeup-source-v6-12-v8-0-6972a810d63b@baylibre.com
v10:
https://lore.kernel.org/r/20251001-topic-mcan-wakeup-source-v6-12-v10-0-4ab508ac5d1e@baylibre.com
> 2. This series (devicetree): Defines system states and wakeup sources in
> the devicetree for am62, am62a and am62p.
>
> 3. TI-SCI firmware series: Implements the firmware interface to enter
> Partial-IO mode when appropriate wakeup sources are enabled.
> https://gitlab.baylibre.com/msp8/linux/-/tree/topic/tisci-partialio/v6.17?ref_type=heads
v8:
https://lore.kernel.org/r/20251001-topic-am62-partialio-v6-12-b4-v8-0-76a742605110@baylibre.com
Best
Markus
>
> Devicetree Bindings
> -------------------
> This series depends on the dt-schema pull request that adds bindings for
> system-idle-states and updates the binding for wakeup-source:
> https://github.com/devicetree-org/dt-schema/pull/150
>
> This is merged now in upstream dt-schema. These new bindings allow us to
> define the system states and reference them from device wakeup-source
> properties.
>
> Testing
> -------
> A test branch is available here that includes all patches required to
> test Partial-IO:
>
> https://gitlab.baylibre.com/msp8/linux/-/tree/integration/am62-partialio/v6.17?ref_type=heads
>
> After enabling Wake-on-LAN the system can be powered off and will enter
> the Partial-IO state in which it can be woken up by activity on the
> specific pins:
> ethtool -s can0 wol p
> ethtool -s can1 wol p
> poweroff
>
> I tested these patches on am62-lp-sk.
>
> Best,
> Markus
>
> Previous versions
> -----------------
> - Link to v2: https://lore.kernel.org/r/20250812-topic-am62-dt-partialio-v6-15-v2-0-25352364a0ac@baylibre.com
> - Link to v1: https://lore.kernel.org/r/20250421-topic-am62-dt-partialio-v6-15-v1-0-6ced30aafddb@baylibre.com
> - As part of the series "firmware: ti_sci: Partial-IO support"
> https://lore.kernel.org/r/20250306-topic-am62-partialio-v6-12-b4-v5-0-f9323d3744a2@baylibre.com
>
> Changes in v3:
> - Drop patch to add WKUP_EN and rebase to linux-next to base on the
> patch that accepted which adds PIN_WKUP_EN instead
> https://lore.kernel.org/all/20250909044108.2541534-1-a-kaur@ti.com/
> - Fix small typos in the commit messages
> - Use AM62AX_MCU_IOPAD for am62a and AM62PX_MCU_IOPAD for am62p
>
> Changes in v2:
> - Combine k3-am62a7-sk.dts devicetree nodes with existing ones
> - Combine k3-am62p5-sk.dts devicetree nodes with existing ones
> - Update the idle-state-name properties to the new names from the
> dt-schema
> - Rebase to 6.17-rc1
>
> Signed-off-by: Markus Schneider-Pargmann (TI.com) <msp@...libre.com>
> ---
> Markus Schneider-Pargmann (TI.com) (6):
> arm64: dts: ti: k3-am62: Define possible system states
> arm64: dts: ti: k3-am62a: Define possible system states
> arm64: dts: ti: k3-am62p: Define possible system states
> arm64: dts: ti: k3-am62-lp-sk: Set wakeup-source system-states
> arm64: dts: ti: k3-am62a7-sk: Set wakeup-source system-states
> arm64: dts: ti: k3-am62p5-sk: Set wakeup-source system-states
>
> arch/arm64/boot/dts/ti/k3-am62-lp-sk.dts | 60 +++++++++++++++++++++++++++
> arch/arm64/boot/dts/ti/k3-am62.dtsi | 22 ++++++++++
> arch/arm64/boot/dts/ti/k3-am62a.dtsi | 27 ++++++++++++
> arch/arm64/boot/dts/ti/k3-am62a7-sk.dts | 71 ++++++++++++++++++++++++++++++++
> arch/arm64/boot/dts/ti/k3-am62p.dtsi | 27 ++++++++++++
> arch/arm64/boot/dts/ti/k3-am62p5-sk.dts | 71 ++++++++++++++++++++++++++++++++
> 6 files changed, 278 insertions(+)
> ---
> base-commit: 24c4d4041c2ec11c47baf6ea54f9379cf88809fc
> change-id: 20250415-topic-am62-dt-partialio-v6-15-327dd1ff17da
> prerequisite-change-id: 20241009-topic-mcan-wakeup-source-v6-12-8c1d69931bd8:v10
> prerequisite-patch-id: 40ff771d13dccae91c04ab120aa1b5e406b66e47
> prerequisite-patch-id: 830b339ea452edd750b04f719da91e721be630cb
> prerequisite-patch-id: 2c9142d2bc47e64c49b7b8a7ca20a62a0be14870
> prerequisite-patch-id: aa64f7e9fcc3fcbb3cb871a05a07f398f3aa8231
>
> Best regards,
Download attachment "signature.asc" of type "application/pgp-signature" (290 bytes)
Powered by blists - more mailing lists