[PATCH 0/4] CAN TRANSCEIVER: Add support for CAN transceivers

From: Aswath Govindraju
Date: Fri Apr 09 2021 - 09:41:33 EST


The following series of patches add support for CAN transceivers.

TCAN1042 has a standby signal that needs to be pulled high for
sending/receiving messages[1]. TCAN1043 has a enable signal along with
standby signal that needs to be pulled up for sending/receiving
messages[2], and other combinations of the two lines can be used to put the
transceiver in different states to reduce power consumption. On boards
like the AM654-idk and J721e-evm these signals are controlled using gpios.

Patch 1 models the transceiver as a phy device tree node with properties
for max bit rate supported, gpio properties for indicating gpio pin numbers
to which standby and enable signals are connected.

Patch 2 adds a generic driver to support CAN transceivers.

Patches 3 & 4 add support for implementing the transceiver as a phy of
m_can_platform driver.

Aswath Govindraju (2):
dt-bindings: phy: Add binding for TI TCAN104x CAN transceivers
phy: phy-can-transceiver: Add support for generic CAN transceiver
driver

Faiz Abbas (2):
dt-bindings: net: can: Document transceiver implementation as phy
can: m_can_platform: Add support for transceiver as phy

.../bindings/net/can/bosch,m_can.yaml | 6 +
.../bindings/phy/ti,tcan104x-can.yaml | 56 +++++++
drivers/net/can/m_can/m_can_platform.c | 25 ++++
drivers/phy/Kconfig | 9 ++
drivers/phy/Makefile | 1 +
drivers/phy/phy-can-transceiver.c | 140 ++++++++++++++++++
6 files changed, 237 insertions(+)
create mode 100644 Documentation/devicetree/bindings/phy/ti,tcan104x-can.yaml
create mode 100644 drivers/phy/phy-can-transceiver.c

--
2.17.1