* [PATCH v2 0/2] can: m_can: support out-of-band wakeup capability
@ 2026-08-20 21:39 Kendall Willis
2026-08-20 21:39 ` [PATCH v2 1/2] dt-bindings: can: m_can: add out band wakeup property Kendall Willis
2026-08-20 21:39 ` [PATCH v2 2/2] can: m_can: set out-of-band wakeup if wakeup pinctrl exists Kendall Willis
0 siblings, 2 replies; 5+ messages in thread
From: Kendall Willis @ 2026-08-20 21:39 UTC (permalink / raw)
To: Markus Schneider-Pargmann, Marc Kleine-Budde, Vincent Mailhol,
Rob Herring, Krzysztof Kozlowski, Conor Dooley,
Chandrasekar Ramakrishnan
Cc: s-kochidanadu, a-kaur, s-tripathi1, vishalm, k-willis, linux-can,
devicetree, linux-kernel
This series adds support for the out-of-band wakeup capability in the m_can
driver. Some CAN devices are wakeup capable and can wake up the system
while being in a domain that is OFF. Allow the driver to set the
out-of-band wakeup flag during suspend if the "out-band-wakeup" property
is present in the device tree.
A corresponding DTS series enabling this feature on TI K3 AM62A, AM62D,
AM62P, and AM62X-LP SoCs has been submitted separately:
"arm64: dts: ti: add out-band-wakeup property to m_can devices"
Testing
-------
Tested suspend/resume with CAN wakeup on AM62P SK EVM.
Signed-off-by: Kendall Willis <k-willis@ti.com>
---
Changes in v2:
- Create "out-band-wakeup" property in dt bindings.
- Use "out-band-wakeup" property to set the out_band_wakeup flag upon
suspend.
- Rebase to v7.2
- Link to v1: https://lore.kernel.org/r/20260213-mcan-out-of-band-v1-1-af68d4c570b3@ti.com
---
Kendall Willis (2):
dt-bindings: can: m_can: add out band wakeup property
can: m_can: set out-of-band wakeup if wakeup pinctrl exists
Documentation/devicetree/bindings/net/can/bosch,m_can.yaml | 12 ++++++++++++
drivers/net/can/m_can/m_can.c | 6 +++++-
2 files changed, 17 insertions(+), 1 deletion(-)
---
base-commit: 8d3ae59288f1e7d58d76558a6ee96d533bc5019f
change-id: 20260819-temp-93299bee27b7
Best regards,
--
Kendall Willis <k-willis@ti.com>
^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH v2 1/2] dt-bindings: can: m_can: add out band wakeup property
2026-08-20 21:39 [PATCH v2 0/2] can: m_can: support out-of-band wakeup capability Kendall Willis
@ 2026-08-20 21:39 ` Kendall Willis
2026-08-20 21:48 ` sashiko-bot
2026-08-20 21:39 ` [PATCH v2 2/2] can: m_can: set out-of-band wakeup if wakeup pinctrl exists Kendall Willis
1 sibling, 1 reply; 5+ messages in thread
From: Kendall Willis @ 2026-08-20 21:39 UTC (permalink / raw)
To: Markus Schneider-Pargmann, Marc Kleine-Budde, Vincent Mailhol,
Rob Herring, Krzysztof Kozlowski, Conor Dooley,
Chandrasekar Ramakrishnan
Cc: s-kochidanadu, a-kaur, s-tripathi1, vishalm, k-willis, linux-can,
devicetree, linux-kernel
Create out-band-wakeup property. The property indicates that the device
can wakeup the system even when its power domain is off. The property is
only used if the device is a wakeup source.
Signed-off-by: Kendall Willis <k-willis@ti.com>
---
Documentation/devicetree/bindings/net/can/bosch,m_can.yaml | 12 ++++++++++++
1 file changed, 12 insertions(+)
diff --git a/Documentation/devicetree/bindings/net/can/bosch,m_can.yaml b/Documentation/devicetree/bindings/net/can/bosch,m_can.yaml
index 2c9d37975bedd652b3060ab11ba75c37565edaad..b6cb945c225f168533f714b5db08afbdc4ebeb93 100644
--- a/Documentation/devicetree/bindings/net/can/bosch,m_can.yaml
+++ b/Documentation/devicetree/bindings/net/can/bosch,m_can.yaml
@@ -150,6 +150,11 @@ properties:
description:
List of phandles to system idle states in which mcan can wakeup the system.
+ out-band-wakeup:
+ type: boolean
+ description:
+ Indicates CAN device is out-of-band wakeup capable.
+
required:
- compatible
- reg
@@ -158,6 +163,13 @@ required:
- clock-names
- bosch,mram-cfg
+if:
+ required:
+ - out-band-wakeup
+then:
+ required:
+ - wakeup-source
+
unevaluatedProperties: false
examples:
--
2.34.1
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [PATCH v2 2/2] can: m_can: set out-of-band wakeup if wakeup pinctrl exists
2026-08-20 21:39 [PATCH v2 0/2] can: m_can: support out-of-band wakeup capability Kendall Willis
2026-08-20 21:39 ` [PATCH v2 1/2] dt-bindings: can: m_can: add out band wakeup property Kendall Willis
@ 2026-08-20 21:39 ` Kendall Willis
1 sibling, 0 replies; 5+ messages in thread
From: Kendall Willis @ 2026-08-20 21:39 UTC (permalink / raw)
To: Markus Schneider-Pargmann, Marc Kleine-Budde, Vincent Mailhol,
Rob Herring, Krzysztof Kozlowski, Conor Dooley,
Chandrasekar Ramakrishnan
Cc: s-kochidanadu, a-kaur, s-tripathi1, vishalm, k-willis, linux-can,
devicetree, linux-kernel
In TI AM62X, AM62A, and AM62P SoCs, the m_can pins can act as a wakeup
source in the deepest low power states. However, the m_can pins are a part
of the MCU domain which is OFF in deeper low power states. Since the m_can
pins continue to be ON even if the MCU domain is turned off, set the
out-of-band wakeup flag if the CAN device may wakeup, has the
"out-band-wakeup" property in the device tree node, and has the "wakeup"
pinctrl state.
Signed-off-by: Kendall Willis <k-willis@ti.com>
---
drivers/net/can/m_can/m_can.c | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/drivers/net/can/m_can/m_can.c b/drivers/net/can/m_can/m_can.c
index eb856547ae7df27a844b236a0c1d4498cbb8b60f..e745660fb3eb311de70635fcfc016a44e62d5602 100644
--- a/drivers/net/can/m_can/m_can.c
+++ b/drivers/net/can/m_can/m_can.c
@@ -2622,8 +2622,12 @@ int m_can_class_suspend(struct device *dev)
cdev->can.state = CAN_STATE_SLEEPING;
}
- if (!m_can_class_wakeup_pinctrl_enabled(cdev))
+ if (m_can_class_wakeup_pinctrl_enabled(cdev)) {
+ if (device_property_read_bool(dev, "out-band-wakeup"))
+ device_set_out_band_wakeup(dev);
+ } else {
pinctrl_pm_select_sleep_state(dev);
+ }
return ret;
}
--
2.34.1
^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH v2 1/2] dt-bindings: can: m_can: add out band wakeup property
2026-08-20 21:39 ` [PATCH v2 1/2] dt-bindings: can: m_can: add out band wakeup property Kendall Willis
@ 2026-08-20 21:48 ` sashiko-bot
2026-08-21 15:55 ` Kendall Willis
0 siblings, 1 reply; 5+ messages in thread
From: sashiko-bot @ 2026-08-20 21:48 UTC (permalink / raw)
To: Kendall Willis
Cc: Marc Kleine-Budde, Oliver Hartkopp, Vincent Mailhol, robh,
linux-can, devicetree, conor+dt, Oleksij Rempel
Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
- [Low] The newly added custom device-specific property `out-band-wakeup` is missing a vendor prefix.
--
--- Patch [1]: [PATCH v2 1/2] dt-bindings: can: m_can: add out band wakeup property ---
commit 66d860c00379089f5518db1a67a453077a6864ea
Author: Kendall Willis <k-willis@ti.com>
dt-bindings: can: m_can: add out band wakeup property
This commit introduces the out-band-wakeup property to the m_can binding.
The property indicates if the CAN device is capable of waking up the system
even when its power domain is off.
> diff --git a/Documentation/devicetree/bindings/net/can/bosch,m_can.yaml b/Documentation/devicetree/bindings/net/can/bosch,m_can.yaml
> index 2c9d37975bedd..b6cb945c225f1 100644
> --- a/Documentation/devicetree/bindings/net/can/bosch,m_can.yaml
> +++ b/Documentation/devicetree/bindings/net/can/bosch,m_can.yaml
> @@ -150,6 +150,11 @@ properties:
> description:
> List of phandles to system idle states in which mcan can wakeup the system.
>
> + out-band-wakeup:
> + type: boolean
> + description:
> + Indicates CAN device is out-of-band wakeup capable.
[Severity: Low]
Should this device-specific property have a vendor prefix?
Since this property is not defined in a core common schema like dtschema
or can-controller.yaml, the Devicetree specification requires a vendor
prefix (such as ti,out-band-wakeup or bosch,out-band-wakeup) to prevent
property name collisions.
[ ... ]
--
Sashiko AI review · https://sashiko.dev/#/patchset/20260820-temp-v2-0-dd3f8cacc15e@ti.com?part=1
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH v2 1/2] dt-bindings: can: m_can: add out band wakeup property
2026-08-20 21:48 ` sashiko-bot
@ 2026-08-21 15:55 ` Kendall Willis
0 siblings, 0 replies; 5+ messages in thread
From: Kendall Willis @ 2026-08-21 15:55 UTC (permalink / raw)
To: sashiko-reviews
Cc: Marc Kleine-Budde, Oliver Hartkopp, Vincent Mailhol, robh,
linux-can, devicetree, conor+dt, Oleksij Rempel
On 21:48-20260820, sashiko-bot@kernel.org wrote:
> Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
> - [Low] The newly added custom device-specific property `out-band-wakeup` is missing a vendor prefix.
> --
>
> --- Patch [1]: [PATCH v2 1/2] dt-bindings: can: m_can: add out band wakeup property ---
> commit 66d860c00379089f5518db1a67a453077a6864ea
> Author: Kendall Willis <k-willis@ti.com>
>
> dt-bindings: can: m_can: add out band wakeup property
>
> This commit introduces the out-band-wakeup property to the m_can binding.
> The property indicates if the CAN device is capable of waking up the system
> even when its power domain is off.
>
> > diff --git a/Documentation/devicetree/bindings/net/can/bosch,m_can.yaml b/Documentation/devicetree/bindings/net/can/bosch,m_can.yaml
> > index 2c9d37975bedd..b6cb945c225f1 100644
> > --- a/Documentation/devicetree/bindings/net/can/bosch,m_can.yaml
> > +++ b/Documentation/devicetree/bindings/net/can/bosch,m_can.yaml
> > @@ -150,6 +150,11 @@ properties:
> > description:
> > List of phandles to system idle states in which mcan can wakeup the system.
> >
> > + out-band-wakeup:
> > + type: boolean
> > + description:
> > + Indicates CAN device is out-of-band wakeup capable.
>
> [Severity: Low]
> Should this device-specific property have a vendor prefix?
>
> Since this property is not defined in a core common schema like dtschema
> or can-controller.yaml, the Devicetree specification requires a vendor
> prefix (such as ti,out-band-wakeup or bosch,out-band-wakeup) to prevent
> property name collisions.
This is a valid point. I sent a PR to the dtschema repo [1] to add the
out-band-wakeup property to the core common schema. I will be sending a v3
to fix the bindings with that PR in mind.
[1] https://github.com/devicetree-org/dt-schema/pull/205
Best,
Kendall
>
> [ ... ]
>
> --
> Sashiko AI review · https://sashiko.dev/#/patchset/20260820-temp-v2-0-dd3f8cacc15e@ti.com?part=1
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2026-08-21 15:56 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-08-20 21:39 [PATCH v2 0/2] can: m_can: support out-of-band wakeup capability Kendall Willis
2026-08-20 21:39 ` [PATCH v2 1/2] dt-bindings: can: m_can: add out band wakeup property Kendall Willis
2026-08-20 21:48 ` sashiko-bot
2026-08-21 15:55 ` Kendall Willis
2026-08-20 21:39 ` [PATCH v2 2/2] can: m_can: set out-of-band wakeup if wakeup pinctrl exists Kendall Willis
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.