TJA1048 is a Dual channel can transceiver with Sleep mode supported.
TJA1051 is a Single Channel can transceiver with Sleep mode supported.
To support them:
patch 1: add binding doc
patch 2: To support dual channel,
- Introduce new flag CAN_TRANSCEIVER_DUAL_CH to indicate the phy
has two channels.
- Introduce can_transceiver_priv as a higher level encapsulation for
phy, mux_state, num_ch.
- Alloc a phy for each channel
patch 3,4,5: Update dts to use phys
Signed-off-by: Peng Fan <peng.fan@nxp.com>
---
---
Changes in v2:
- Update standby-gpios constraints per Conor's comments
- Drop patch 2 which is not needed.
- Link to v1: https://lore.kernel.org/r/20250822-can-v1-0-c075f702adea@nxp.com
---
Peng Fan (5):
dt-bindings: phy: ti,tcan104x-can: Document NXP TJA1051/1048
phy: phy-can-transceiver: Add dual channel support for TJA1048
arm64: dts: imx95-15x15-evk: Use phys to replace xceiver-supply
arm64: dts: imx8mp-evk: Use phys to replace xceiver-supply
arm64: dts: imx93-11x11-evk: Use phys to replace xceiver-supply
.../devicetree/bindings/phy/ti,tcan104x-can.yaml | 33 +++++-
arch/arm64/boot/dts/freescale/imx8mp-evk.dts | 43 +++-----
arch/arm64/boot/dts/freescale/imx93-11x11-evk.dts | 17 ++-
arch/arm64/boot/dts/freescale/imx95-15x15-evk.dts | 13 ++-
drivers/phy/phy-can-transceiver.c | 117 +++++++++++++++------
5 files changed, 140 insertions(+), 83 deletions(-)
---
base-commit: b4498e5df1daaf2832141a27c1e5bc34a7553087
change-id: 20250821-can-c832cb4f0323
Best regards,
--
Peng Fan <peng.fan@nxp.com>