[PATCH RESEND v4 0/2] can: flexcan: add transceiver capabilities

From: Dimitri Fedrau via B4 Relay
Date: Wed Mar 12 2025 - 13:45:41 EST


Currently the flexcan driver does only support adding PHYs by using the
"old" regulator bindings. Add support for CAN transceivers as a PHY. Add
the capability to ensure that the PHY is in operational state when the link
is set to an "up" state.

Signed-off-by: Dimitri Fedrau <dimitri.fedrau@xxxxxxxxxxxx>
---
Changes in v4:
- Dropped "if: required: phys" in bindings
- Link to v3: https://lore.kernel.org/r/20250221-flexcan-add-transceiver-caps-v3-0-a947bde55a62@xxxxxxxxxxxx

Changes in v3:
- Have xceiver-supply or phys properties in bindings
- Switch do dev_err_probe in flexcan_probe when checking error of call
devm_phy_optional_get
- Link to v2: https://lore.kernel.org/r/20250220-flexcan-add-transceiver-caps-v2-0-a81970f11846@xxxxxxxxxxxx

Changes in v2:
- Rename variable xceiver to transceiver in struct flexcan_priv and in
flexcan_probe
- Set priv->can.bitrate_max if transceiver is found
- Fix commit messages which claim that transceivers are not supported
- Do not print error on EPROBE_DEFER after calling devm_phy_optional_get in
flexcan_probe
- Link to v1: https://lore.kernel.org/r/20250211-flexcan-add-transceiver-caps-v1-0-c6abb7817b0f@xxxxxxxxxxxx

---
Dimitri Fedrau (2):
dt-bindings: can: fsl,flexcan: add transceiver capabilities
can: flexcan: add transceiver capabilities

.../devicetree/bindings/net/can/fsl,flexcan.yaml | 9 ++++++++
drivers/net/can/flexcan/flexcan-core.c | 27 +++++++++++++++++-----
drivers/net/can/flexcan/flexcan.h | 1 +
3 files changed, 31 insertions(+), 6 deletions(-)
---
base-commit: 6a24171b9625471abfc90c7b28c4b45bee64b3a4
change-id: 20241209-flexcan-add-transceiver-caps-7cff9400c926

Best regards,
--
Dimitri Fedrau <dimitri.fedrau@xxxxxxxxxxxx>