blob: 2a98b26630cb1c0a88c0740d813d54ad881b3629 [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001# 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: Microchip MCP2517FD, MCP2518FD and MCP251863 stand-alone CAN controller
8
9maintainers:
10 - Marc Kleine-Budde <mkl@pengutronix.de>
11
12allOf:
13 - $ref: can-controller.yaml#
14
15properties:
16 compatible:
17 oneOf:
18 - enum:
19 - microchip,mcp2517fd
20 - microchip,mcp2518fd
21 - microchip,mcp251xfd
22 - items:
23 - enum:
24 - microchip,mcp251863
25 - const: microchip,mcp2518fd
26 reg:
27 maxItems: 1
28
29 interrupts:
30 maxItems: 1
31
32 clocks:
33 maxItems: 1
34
35 vdd-supply:
36 description: Regulator that powers the CAN controller.
37
38 xceiver-supply:
39 description: Regulator that powers the CAN transceiver.
40
41 microchip,rx-int-gpios:
42 description:
43 GPIO phandle of GPIO connected to to INT1 pin of the MCP251XFD, which
44 signals a pending RX interrupt.
45 maxItems: 1
46
47 spi-max-frequency:
48 description:
49 Must be half or less of "clocks" frequency.
50 maximum: 20000000
51
52required:
53 - compatible
54 - reg
55 - interrupts
56 - clocks
57
58additionalProperties: false
59
60examples:
61 - |
62 #include <dt-bindings/gpio/gpio.h>
63 #include <dt-bindings/interrupt-controller/irq.h>
64
65 spi {
66 #address-cells = <1>;
67 #size-cells = <0>;
68
69 can@0 {
70 compatible = "microchip,mcp251xfd";
71 reg = <0>;
72 clocks = <&can0_osc>;
73 pinctrl-names = "default";
74 pinctrl-0 = <&can0_pins>;
75 spi-max-frequency = <20000000>;
76 interrupts-extended = <&gpio 13 IRQ_TYPE_LEVEL_LOW>;
77 microchip,rx-int-gpios = <&gpio 27 GPIO_ACTIVE_LOW>;
78 vdd-supply = <&reg5v0>;
79 xceiver-supply = <&reg5v0>;
80 };
81 };