* [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; 4+ 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] 4+ 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; 4+ 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] 4+ 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; 4+ 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] 4+ 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
0 siblings, 0 replies; 4+ 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] 4+ messages in thread
end of thread, other threads:[~2026-08-20 21:48 UTC | newest]
Thread overview: 4+ 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-20 21:39 ` [PATCH v2 2/2] can: m_can: set out-of-band wakeup if wakeup pinctrl exists Kendall Willis
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox