10e051294SThomas Kopp# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
20e051294SThomas Kopp%YAML 1.2
30e051294SThomas Kopp---
40e051294SThomas Kopp$id: http://devicetree.org/schemas/net/can/microchip,mcp251xfd.yaml#
50e051294SThomas Kopp$schema: http://devicetree.org/meta-schemas/core.yaml#
60e051294SThomas Kopp
70e051294SThomas Kopptitle:
8*62111976SMarc Kleine-Budde  Microchip MCP2517FD, MCP2518FD and MCP251863 stand-alone CAN
9*62111976SMarc Kleine-Budde  controller device tree bindings
100e051294SThomas Kopp
110e051294SThomas Koppmaintainers:
120e051294SThomas Kopp  - Marc Kleine-Budde <mkl@pengutronix.de>
130e051294SThomas Kopp
1466224f66SMarc Kleine-BuddeallOf:
1566224f66SMarc Kleine-Budde  - $ref: can-controller.yaml#
1666224f66SMarc Kleine-Budde
170e051294SThomas Koppproperties:
180e051294SThomas Kopp  compatible:
190e051294SThomas Kopp    oneOf:
20*62111976SMarc Kleine-Budde      - enum:
21*62111976SMarc Kleine-Budde          - microchip,mcp2517fd
22*62111976SMarc Kleine-Budde          - microchip,mcp2518fd
23*62111976SMarc Kleine-Budde          - microchip,mcp251xfd
24*62111976SMarc Kleine-Budde      - items:
25*62111976SMarc Kleine-Budde          - enum:
26*62111976SMarc Kleine-Budde              - microchip,mcp251863
270e051294SThomas Kopp          - const: microchip,mcp2518fd
280e051294SThomas Kopp  reg:
290e051294SThomas Kopp    maxItems: 1
300e051294SThomas Kopp
310e051294SThomas Kopp  interrupts:
320e051294SThomas Kopp    maxItems: 1
330e051294SThomas Kopp
340e051294SThomas Kopp  clocks:
350e051294SThomas Kopp    maxItems: 1
360e051294SThomas Kopp
370e051294SThomas Kopp  vdd-supply:
380e051294SThomas Kopp    description: Regulator that powers the CAN controller.
390e051294SThomas Kopp
400e051294SThomas Kopp  xceiver-supply:
410e051294SThomas Kopp    description: Regulator that powers the CAN transceiver.
420e051294SThomas Kopp
430e051294SThomas Kopp  microchip,rx-int-gpios:
440e051294SThomas Kopp    description:
450e051294SThomas Kopp      GPIO phandle of GPIO connected to to INT1 pin of the MCP251XFD, which
460e051294SThomas Kopp      signals a pending RX interrupt.
470e051294SThomas Kopp    maxItems: 1
480e051294SThomas Kopp
490e051294SThomas Kopp  spi-max-frequency:
500e051294SThomas Kopp    description:
510e051294SThomas Kopp      Must be half or less of "clocks" frequency.
520e051294SThomas Kopp    maximum: 20000000
530e051294SThomas Kopp
540e051294SThomas Kopprequired:
550e051294SThomas Kopp  - compatible
560e051294SThomas Kopp  - reg
570e051294SThomas Kopp  - interrupts
580e051294SThomas Kopp  - clocks
590e051294SThomas Kopp
600e051294SThomas KoppadditionalProperties: false
610e051294SThomas Kopp
620e051294SThomas Koppexamples:
630e051294SThomas Kopp  - |
640e051294SThomas Kopp    #include <dt-bindings/gpio/gpio.h>
650e051294SThomas Kopp    #include <dt-bindings/interrupt-controller/irq.h>
660e051294SThomas Kopp
670e051294SThomas Kopp    spi0 {
680e051294SThomas Kopp        #address-cells = <1>;
690e051294SThomas Kopp        #size-cells = <0>;
700e051294SThomas Kopp
710e051294SThomas Kopp        can@0 {
720e051294SThomas Kopp            compatible = "microchip,mcp251xfd";
730e051294SThomas Kopp            reg = <0>;
740e051294SThomas Kopp            clocks = <&can0_osc>;
750e051294SThomas Kopp            pinctrl-names = "default";
760e051294SThomas Kopp            pinctrl-0 = <&can0_pins>;
770e051294SThomas Kopp            spi-max-frequency = <20000000>;
780e051294SThomas Kopp            interrupts-extended = <&gpio 13 IRQ_TYPE_LEVEL_LOW>;
790e051294SThomas Kopp            microchip,rx-int-gpios = <&gpio 27 GPIO_ACTIVE_LOW>;
800e051294SThomas Kopp            vdd-supply = <&reg5v0>;
810e051294SThomas Kopp            xceiver-supply = <&reg5v0>;
820e051294SThomas Kopp        };
830e051294SThomas Kopp    };
84