[PATCH v2 0/3] can: mcp251xfd: add XSTBYEN transceiver standby control
From: Viken Dadhaniya
Date: Mon Mar 16 2026 - 09:20:22 EST
This series adds support for the MCP251xFD's dedicated transceiver standby
control function via the XSTBYEN bit, and enables it on the QCS6490 RB3
Gen2 board.
The MCP251xFD has a hardware-managed transceiver standby control on the
INT0/GPIO0/XSTBY pin. When XSTBYEN is enabled, the hardware automatically
drives the pin low when the controller is active and high when it enters
Sleep mode, providing automatic standby control of an external CAN
transceiver without software intervention.
Testing was performed on the QCS6490 RB3 Gen2 board with a PCAN-USB FD
adapter, confirming that:
- The transceiver is active (pin LOW) when the controller is in
normal mode
- CAN communication works correctly
- The pin is automatically managed on sleep/wake transitions
---
v1 -> v2:
- Drop the gpio-hog approach as suggested by Dmitry.
- Enable hardware‑managed transceiver standby control via the appropriate
Device Tree property.
v1 Link: https://lore.kernel.org/all/20260108125200.2803112-1-viken.dadhaniya@xxxxxxxxxxxxxxxx/
---
Viken Dadhaniya (3):
dt-bindings: can: mcp251xfd: add microchip,xstbyen property
can: mcp251xfd: add support for XSTBYEN transceiver standby control
arm64: dts: qcom: qcs6490-rb3gen2: Enable CAN bus controller
.../bindings/net/can/microchip,mcp251xfd.yaml | 8 +++++
arch/arm64/boot/dts/qcom/qcs6490-rb3gen2.dts | 22 ++++++++++++++
.../net/can/spi/mcp251xfd/mcp251xfd-core.c | 30 +++++++++++++++++++
drivers/net/can/spi/mcp251xfd/mcp251xfd.h | 1 +
4 files changed, 61 insertions(+)
--
2.34.1