xref: /freebsd/sys/contrib/device-tree/Bindings/net/can/microchip,mcp251xfd.yaml (revision fac71e4e09885bb2afa3d984a0c239a52e1a7418)
16be33864SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
26be33864SEmmanuel Vadot%YAML 1.2
36be33864SEmmanuel Vadot---
46be33864SEmmanuel Vadot$id: http://devicetree.org/schemas/net/can/microchip,mcp251xfd.yaml#
56be33864SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
66be33864SEmmanuel Vadot
78bab661aSEmmanuel Vadottitle: Microchip MCP2517FD, MCP2518FD and MCP251863 stand-alone CAN controller
86be33864SEmmanuel Vadot
96be33864SEmmanuel Vadotmaintainers:
106be33864SEmmanuel Vadot  - Marc Kleine-Budde <mkl@pengutronix.de>
116be33864SEmmanuel Vadot
12c9ccf3a3SEmmanuel VadotallOf:
13c9ccf3a3SEmmanuel Vadot  - $ref: can-controller.yaml#
14c9ccf3a3SEmmanuel Vadot
156be33864SEmmanuel Vadotproperties:
166be33864SEmmanuel Vadot  compatible:
176be33864SEmmanuel Vadot    oneOf:
18d5b0e70fSEmmanuel Vadot      - enum:
19d5b0e70fSEmmanuel Vadot          - microchip,mcp2517fd
20d5b0e70fSEmmanuel Vadot          - microchip,mcp2518fd
21d5b0e70fSEmmanuel Vadot          - microchip,mcp251xfd
22d5b0e70fSEmmanuel Vadot      - items:
23d5b0e70fSEmmanuel Vadot          - enum:
24d5b0e70fSEmmanuel Vadot              - microchip,mcp251863
256be33864SEmmanuel Vadot          - const: microchip,mcp2518fd
266be33864SEmmanuel Vadot  reg:
276be33864SEmmanuel Vadot    maxItems: 1
286be33864SEmmanuel Vadot
296be33864SEmmanuel Vadot  interrupts:
306be33864SEmmanuel Vadot    maxItems: 1
316be33864SEmmanuel Vadot
326be33864SEmmanuel Vadot  clocks:
336be33864SEmmanuel Vadot    maxItems: 1
346be33864SEmmanuel Vadot
356be33864SEmmanuel Vadot  vdd-supply:
366be33864SEmmanuel Vadot    description: Regulator that powers the CAN controller.
376be33864SEmmanuel Vadot
386be33864SEmmanuel Vadot  xceiver-supply:
396be33864SEmmanuel Vadot    description: Regulator that powers the CAN transceiver.
406be33864SEmmanuel Vadot
416be33864SEmmanuel Vadot  microchip,rx-int-gpios:
426be33864SEmmanuel Vadot    description:
436be33864SEmmanuel Vadot      GPIO phandle of GPIO connected to to INT1 pin of the MCP251XFD, which
446be33864SEmmanuel Vadot      signals a pending RX interrupt.
456be33864SEmmanuel Vadot    maxItems: 1
466be33864SEmmanuel Vadot
476be33864SEmmanuel Vadot  spi-max-frequency:
486be33864SEmmanuel Vadot    description:
496be33864SEmmanuel Vadot      Must be half or less of "clocks" frequency.
506be33864SEmmanuel Vadot    maximum: 20000000
516be33864SEmmanuel Vadot
526be33864SEmmanuel Vadotrequired:
536be33864SEmmanuel Vadot  - compatible
546be33864SEmmanuel Vadot  - reg
556be33864SEmmanuel Vadot  - interrupts
566be33864SEmmanuel Vadot  - clocks
576be33864SEmmanuel Vadot
586be33864SEmmanuel VadotadditionalProperties: false
596be33864SEmmanuel Vadot
606be33864SEmmanuel Vadotexamples:
616be33864SEmmanuel Vadot  - |
626be33864SEmmanuel Vadot    #include <dt-bindings/gpio/gpio.h>
636be33864SEmmanuel Vadot    #include <dt-bindings/interrupt-controller/irq.h>
646be33864SEmmanuel Vadot
65*fac71e4eSEmmanuel Vadot    spi {
666be33864SEmmanuel Vadot        #address-cells = <1>;
676be33864SEmmanuel Vadot        #size-cells = <0>;
686be33864SEmmanuel Vadot
696be33864SEmmanuel Vadot        can@0 {
706be33864SEmmanuel Vadot            compatible = "microchip,mcp251xfd";
716be33864SEmmanuel Vadot            reg = <0>;
726be33864SEmmanuel Vadot            clocks = <&can0_osc>;
736be33864SEmmanuel Vadot            pinctrl-names = "default";
746be33864SEmmanuel Vadot            pinctrl-0 = <&can0_pins>;
756be33864SEmmanuel Vadot            spi-max-frequency = <20000000>;
766be33864SEmmanuel Vadot            interrupts-extended = <&gpio 13 IRQ_TYPE_LEVEL_LOW>;
776be33864SEmmanuel Vadot            microchip,rx-int-gpios = <&gpio 27 GPIO_ACTIVE_LOW>;
786be33864SEmmanuel Vadot            vdd-supply = <&reg5v0>;
796be33864SEmmanuel Vadot            xceiver-supply = <&reg5v0>;
806be33864SEmmanuel Vadot        };
816be33864SEmmanuel Vadot    };
82