Hi, On Wed Aug 13, 2025 at 9:23 AM CEST, Marc Kleine-Budde wrote: > On 12.08.2025 11:10:22, Markus Schneider-Pargmann wrote: >> The pins associated with m_can have to have a special configuration to >> be able to wakeup the SoC from some system states. This configuration is >> described in the wakeup pinctrl state while the default state describes >> the default configuration. >> >> Also m_can can be a wakeup-source if capable of wakeup. >> >> Signed-off-by: Markus Schneider-Pargmann >> --- >> .../devicetree/bindings/net/can/bosch,m_can.yaml | 22 ++++++++++++++++++++++ >> 1 file changed, 22 insertions(+) >> >> diff --git a/Documentation/devicetree/bindings/net/can/bosch,m_can.yaml b/Documentation/devicetree/bindings/net/can/bosch,m_can.yaml >> index c4887522e8fe97c3947357b4dbd4ecf20ee8100a..ecba8783198fc1658fcc236d8aa3c89d8c90abbd 100644 >> --- a/Documentation/devicetree/bindings/net/can/bosch,m_can.yaml >> +++ b/Documentation/devicetree/bindings/net/can/bosch,m_can.yaml >> @@ -106,6 +106,22 @@ properties: >> maximum: 32 >> minItems: 1 >> >> + pinctrl-0: >> + description: Default pinctrl state >> + >> + pinctrl-1: >> + description: Wakeup pinctrl state >> + >> + pinctrl-names: >> + description: >> + When present should contain at least "default" describing the default pin >> + states. The second state called "wakeup" describes the pins in their >> + wakeup configuration required to exit sleep states. >> + minItems: 1 >> + items: >> + - const: default >> + - const: wakeup >> + > > This breaks at least the stm32mp15 SoCs that define a sleep state: > > &m_can1 { > resets = <&rcc FDCAN_R>; > pinctrl-names = "default", "sleep"; > pinctrl-0 = <&m_can1_pins_b>; > pinctrl-1 = <&m_can1_sleep_pins_b>; > status = "okay"; > }; I am struggling to find binding documentation that explicitly lists this sleep pinctrl state. So what is the intended purpose here? Also the driver does nothing with this at the moment right? I mean I can also add a sleep state to the binding or just leave the binding empty so it can be anything, but that feels wrong. Best Markus > >> power-domains: >> description: >> Power domain provider node and an args specifier containing >> @@ -122,6 +138,12 @@ properties: >> minItems: 1 >> maxItems: 2 >> >> + wakeup-source: >> + $ref: /schemas/types.yaml#/definitions/phandle-array >> + description: >> + List of phandles to system idle states in which mcan can wakeup the system. >> + >> + > > One newline should be enough. > >> required: >> - compatible >> - reg >> >> -- >> 2.50.1 >> >> >> > > Marc