[PATCH v7 0/2] can: m_can: introduce ti,am62-mcan compatible for out-of-band wakeup

Kendall Willis posted 2 patches 8 hours ago
Documentation/devicetree/bindings/net/can/bosch,m_can.yaml |  6 +++++-
drivers/net/can/m_can/m_can.c                              | 10 ++++++++--
drivers/net/can/m_can/m_can.h                              |  6 ++++++
drivers/net/can/m_can/m_can_platform.c                     |  9 +++++++++
4 files changed, 28 insertions(+), 3 deletions(-)
[PATCH v7 0/2] can: m_can: introduce ti,am62-mcan compatible for out-of-band wakeup
Posted by Kendall Willis 8 hours ago
This series introduces the "ti,am62-mcan" compatible which adds support
for out-of-band wakeup capability in m_can devices.

A corresponding DTS series enabling this feature on TI K3 AM62 family
of devices has been submitted separately:
"arm64: dts: ti: use ti,am62-mcan compatible for m_can devices"

Rebased on top of "can: m_can: Fix suspend deinit() error path" [1] and
6c507ab36a83 ("can: m_can: Remove comma after sentinel-entry in match-table")
so that maintainers can pull this in on top of those commits easily.

Testing
-------
Tested suspend/resume with CAN wakeup on AM62P SK EVM.

[1] https://lore.kernel.org/all/20260918-v7-3-topic-mcan-suspend-fix-fix-v1-1-e24fa70c754e@baylibre.com/

Signed-off-by: Kendall Willis <k-willis@ti.com>
---
Changes in v7:
- Rebased on top of "can: m_can: Fix suspend deinit() error path" and 6c507ab36a83
  ("can: m_can: Remove comma after sentinel-entry in match-table").
- Link to v6: https://lore.kernel.org/r/20260915-temp-v6-0-ddf1411d63cc@ti.com

Changes in v6:
- Fix indentation for items under the compatible property in DT
  bindings.
- Link to v5: https://lore.kernel.org/r/20260912-temp-v5-0-2e3201c02109@ti.com

Changes in v5:
- Rename compatible string from "ti,am62-m_can" to "ti,am62-mcan".
- Update dt binding to use "oneOf" with a fallback compatible chain instead of a flat "enum".
- Rename "struct m_can_pdata" to "struct m_can_of_data".
- Read match data at probe time and cache it in "m_can_classdev" instead of fetching it in suspend.
- Add "out_band_wakeup" flag to "struct m_can_classdev".
- Guard wakeup/sleep pinctrl selection in suspend with a return value check.
- Link to v4: https://lore.kernel.org/r/20260902-temp-v4-0-3896f7d16ce8@ti.com

Changes in v4:
- Remove patch for "out-band-wakeup" property in dt binding.
- Create "ti,am62-m_can" compatible in the dt binding and m_can driver.
- Add "struct m_can_of_data" for compatible-specific data which keeps track
  of "out_band_wakeup" flag.
- Replace check "out-band-wakeup" dt property in the device driver upon
  suspend with check for "out_band_wakeup" variable from the
  "m_can_of_data".
- Link to v3: https://lore.kernel.org/r/20260821-temp-v3-0-9ac1f8806929@ti.com

Changes in v3:
- Remove definition of "out-band-wakeup" property in dt binding.
- Allow "out-band-wakeup" property in dt binding.
- Link to v2: https://lore.kernel.org/r/20260820-temp-v2-0-dd3f8cacc15e@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 ti,am62-mcan compatible
      can: m_can: add ti,am62-mcan compatible with out-of-band wakeup support

 Documentation/devicetree/bindings/net/can/bosch,m_can.yaml |  6 +++++-
 drivers/net/can/m_can/m_can.c                              | 10 ++++++++--
 drivers/net/can/m_can/m_can.h                              |  6 ++++++
 drivers/net/can/m_can/m_can_platform.c                     |  9 +++++++++
 4 files changed, 28 insertions(+), 3 deletions(-)
---
base-commit: dec005ae90a2946656a090f37bf1cfbd22f08e57
change-id: 20260819-temp-93299bee27b7
prerequisite-change-id: 20260914-v7-3-topic-mcan-suspend-fix-fix-b943929d8fef:v1
prerequisite-patch-id: d60701b698565843ed0630ce15cda0c46c35cb39
prerequisite-patch-id: 6c507ab36a830f131d17ca74033282e89dec8a3f

Best regards,
-- 
Kendall Willis <k-willis@ti.com>