The following series of patches add support for implementing the transceiver as a phy of m_can_platform driver.
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. These gpios are set in phy driver, and the transceiver can be put in different states using phy API. The phy driver is added in the series [3]. This patch series is dependent on [4]. Changes since v1: - Used the API devm_phy_get_optional() instead of devm_of_phy_get_optional_by_index() [1] - https://www.ti.com/lit/ds/symlink/tcan1042h.pdf [2] - https://www.ti.com/lit/ds/symlink/tcan1043-q1.pdf [3] - https://lore.kernel.org/patchwork/project/lkml/list/?series=495365 [4] - https://lore.kernel.org/patchwork/patch/1413286/ Faiz Abbas (2): dt-bindings: net: can: Document transceiver implementation as phy can: m_can: Add support for transceiver as phy .../devicetree/bindings/net/can/bosch,m_can.yaml | 3 +++ drivers/net/can/m_can/m_can.c | 10 ++++++++++ drivers/net/can/m_can/m_can.h | 2 ++ drivers/net/can/m_can/m_can_platform.c | 13 +++++++++++++ 4 files changed, 28 insertions(+) -- 2.17.1