# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/phy/ti,tcan104x-can.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: TCAN104x CAN TRANSCEIVER PHY

maintainers:
  - Aswath Govindraju <a-govindraju@ti.com>

properties:
  $nodename:
    pattern: "^can-phy"

  compatible:
    enum:
      - nxp,tjr1443
      - ti,tcan1042
      - ti,tcan1043

  '#phy-cells':
    const: 0

  standby-gpios:
    description:
      gpio node to toggle standby signal on transceiver
    maxItems: 1

  enable-gpios:
    description:
      gpio node to toggle enable signal on transceiver
    maxItems: 1

  max-bitrate:
    $ref: /schemas/types.yaml#/definitions/uint32
    description:
      max bit rate supported in bps
    minimum: 1

  mux-states:
    description:
      mux controller node to route the signals from controller to
      transceiver.
    maxItems: 1

required:
  - compatible
  - '#phy-cells'

additionalProperties: false

examples:
  - |
    #include <dt-bindings/gpio/gpio.h>

    transceiver1: can-phy {
      compatible = "ti,tcan1043";
      #phy-cells = <0>;
      max-bitrate = <5000000>;
      standby-gpios = <&wakeup_gpio1 16 GPIO_ACTIVE_LOW>;
      enable-gpios = <&main_gpio1 67 GPIO_ACTIVE_HIGH>;
      mux-states = <&mux0 1>;
    };