xref: /linux/Documentation/devicetree/bindings/net/can/microchip,mcp251xfd.yaml (revision 073350da0aa2aead9df7927a1c1046ebf5cdd816)
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/net/can/microchip,mcp251xfd.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title:
8  Microchip MCP2517FD, MCP2518FD and MCP251863 stand-alone CAN
9  controller device tree bindings
10
11maintainers:
12  - Marc Kleine-Budde <mkl@pengutronix.de>
13
14allOf:
15  - $ref: can-controller.yaml#
16
17properties:
18  compatible:
19    oneOf:
20      - enum:
21          - microchip,mcp2517fd
22          - microchip,mcp2518fd
23          - microchip,mcp251xfd
24      - items:
25          - enum:
26              - microchip,mcp251863
27          - const: microchip,mcp2518fd
28  reg:
29    maxItems: 1
30
31  interrupts:
32    maxItems: 1
33
34  clocks:
35    maxItems: 1
36
37  vdd-supply:
38    description: Regulator that powers the CAN controller.
39
40  xceiver-supply:
41    description: Regulator that powers the CAN transceiver.
42
43  microchip,rx-int-gpios:
44    description:
45      GPIO phandle of GPIO connected to to INT1 pin of the MCP251XFD, which
46      signals a pending RX interrupt.
47    maxItems: 1
48
49  spi-max-frequency:
50    description:
51      Must be half or less of "clocks" frequency.
52    maximum: 20000000
53
54required:
55  - compatible
56  - reg
57  - interrupts
58  - clocks
59
60additionalProperties: false
61
62examples:
63  - |
64    #include <dt-bindings/gpio/gpio.h>
65    #include <dt-bindings/interrupt-controller/irq.h>
66
67    spi0 {
68        #address-cells = <1>;
69        #size-cells = <0>;
70
71        can@0 {
72            compatible = "microchip,mcp251xfd";
73            reg = <0>;
74            clocks = <&can0_osc>;
75            pinctrl-names = "default";
76            pinctrl-0 = <&can0_pins>;
77            spi-max-frequency = <20000000>;
78            interrupts-extended = <&gpio 13 IRQ_TYPE_LEVEL_LOW>;
79            microchip,rx-int-gpios = <&gpio 27 GPIO_ACTIVE_LOW>;
80            vdd-supply = <&reg5v0>;
81            xceiver-supply = <&reg5v0>;
82        };
83    };
84