Linux CAN drivers development
 help / color / mirror / Atom feed
From: "Markus Schneider-Pargmann" <msp@baylibre.com>
To: "Rob Herring" <robh@kernel.org>
Cc: "Chandrasekar Ramakrishnan" <rcsekar@samsung.com>,
	"Marc Kleine-Budde" <mkl@pengutronix.de>,
	"Krzysztof Kozlowski" <krzk+dt@kernel.org>,
	"Conor Dooley" <conor+dt@kernel.org>,
	"Vishal Mahaveer" <vishalm@ti.com>,
	"Kevin Hilman" <khilman@baylibre.com>,
	"Dhruva Gole" <d-gole@ti.com>,
	"Sebin Francis" <sebin.francis@ti.com>,
	"Kendall Willis" <k-willis@ti.com>,
	"Akashdeep Kaur" <a-kaur@ti.com>,
	"Simon Horman" <horms@kernel.org>,
	"Vincent MAILHOL" <mailhol.vincent@wanadoo.fr>,
	<linux-can@vger.kernel.org>, <devicetree@vger.kernel.org>,
	<linux-kernel@vger.kernel.org>
Subject: Re: [PATCH v9 1/4] dt-bindings: can: m_can: Add wakeup properties
Date: Wed, 27 Aug 2025 10:04:32 +0200	[thread overview]
Message-ID: <DCD1YPX4T779.ADK4JCGW1MU7@baylibre.com> (raw)
In-Reply-To: <20250822143549.GA3664230-robh@kernel.org>

[-- Attachment #1: Type: text/plain, Size: 3014 bytes --]

Hi Rob,

On Fri Aug 22, 2025 at 4:35 PM CEST, Rob Herring wrote:
> On Wed, Aug 20, 2025 at 02:42:25PM +0200, 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 add the sleep state which is already in
>> use by some devicetrees.
>> 
>> Also m_can can be a wakeup-source if capable of wakeup.
>> 
>> Signed-off-by: Markus Schneider-Pargmann <msp@baylibre.com>
>> ---
>>  .../devicetree/bindings/net/can/bosch,m_can.yaml   | 25 ++++++++++++++++++++++
>>  1 file changed, 25 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..0e00be18a8be681634f25378bb2cdef034dc4e6b 100644
>> --- a/Documentation/devicetree/bindings/net/can/bosch,m_can.yaml
>> +++ b/Documentation/devicetree/bindings/net/can/bosch,m_can.yaml
>> @@ -106,6 +106,26 @@ properties:
>>          maximum: 32
>>      minItems: 1
>>  
>> +  pinctrl-0:
>> +    description: Default pinctrl state
>> +
>> +  pinctrl-1:
>> +    description: Can be Sleep or Wakeup pinctrl state
>> +
>> +  pinctrl-2:
>> +    description: Can be Sleep or Wakeup pinctrl state
>> +
>> +  pinctrl-names:
>> +    description:
>> +      When present should contain at least "default" describing the default pin
>> +      states. Other states are "sleep" which describes the pinstate when
>> +      sleeping and "wakeup" describing the pins if wakeup is enabled.
>> +    minItems: 1
>> +    items:
>> +      - const: default
>> +      - const: sleep
>> +      - const: wakeup
>
> This doesn't allow '"default", "wakeup"' which I think you want.
>
> "sleep" and "wakeup" seem mutually exclusive and really are just the 
> same thing. Both apply to the same mode/state. Whether you can wake from 
> it is just an additional property (of the state). 
>
> So I think you want:
>
> items:
>   - const: default
>   - enum: [ sleep, wakeup ]
>
>
> Or you should just drop 'wakeup' and just support wakeup with 'sleep' 
> when 'wakeup-source' is present.

Thanks for your feedback. I see they seem to be mutually exclusive, but
I think they serve different purposes. The sleep state describes the
pins when sleeping with wakeup disabled. The wakeup state describes the
pins when sleeping or off and wakeup is enabled.

Only allowing one of the two states or only using the sleep state will
enable or disable wakeup statically, there is no way to choose one or
the other.

For my specific setup, the name of a sleep state is also kind of
misleading. The SoC is in a poweroff state and sensitive to activity on
the pins configured for wakeup. It is not just sleeping, it will do a
fresh boot once woken up. 

Best
Markus

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 289 bytes --]

  reply	other threads:[~2025-08-27  8:04 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-08-20 12:42 [PATCH v9 0/4] can: m_can: Add am62 wakeup support Markus Schneider-Pargmann
2025-08-20 12:42 ` [PATCH v9 1/4] dt-bindings: can: m_can: Add wakeup properties Markus Schneider-Pargmann
2025-08-22 14:35   ` Rob Herring
2025-08-27  8:04     ` Markus Schneider-Pargmann [this message]
2025-09-09  9:01       ` Markus Schneider-Pargmann
2025-09-02 19:59   ` Kendall Willis
2025-08-20 12:42 ` [PATCH v9 2/4] can: m_can: Map WoL to device_set_wakeup_enable Markus Schneider-Pargmann
2025-09-09 18:54   ` Kendall Willis
2025-08-20 12:42 ` [PATCH v9 3/4] can: m_can: Return ERR_PTR on error in allocation Markus Schneider-Pargmann
2025-09-04  9:08   ` Dhruva Gole
2025-09-09 18:53   ` Kendall Willis
2025-08-20 12:42 ` [PATCH v9 4/4] can: m_can: Support pinctrl wakeup state Markus Schneider-Pargmann
2025-09-04  9:05   ` Dhruva Gole
2025-09-09 18:57     ` Kendall Willis

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=DCD1YPX4T779.ADK4JCGW1MU7@baylibre.com \
    --to=msp@baylibre.com \
    --cc=a-kaur@ti.com \
    --cc=conor+dt@kernel.org \
    --cc=d-gole@ti.com \
    --cc=devicetree@vger.kernel.org \
    --cc=horms@kernel.org \
    --cc=k-willis@ti.com \
    --cc=khilman@baylibre.com \
    --cc=krzk+dt@kernel.org \
    --cc=linux-can@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mailhol.vincent@wanadoo.fr \
    --cc=mkl@pengutronix.de \
    --cc=rcsekar@samsung.com \
    --cc=robh@kernel.org \
    --cc=sebin.francis@ti.com \
    --cc=vishalm@ti.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox