]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - Bindings/net/renesas,ravb.txt
Import DTS from Linux 5.8
[FreeBSD/FreeBSD.git] / Bindings / net / renesas,ravb.txt
1 * Renesas Electronics Ethernet AVB
2
3 This file provides information on what the device node for the Ethernet AVB
4 interface contains.
5
6 Required properties:
7 - compatible: Must contain one or more of the following:
8       - "renesas,etheravb-r8a7742" for the R8A7742 SoC.
9       - "renesas,etheravb-r8a7743" for the R8A7743 SoC.
10       - "renesas,etheravb-r8a7744" for the R8A7744 SoC.
11       - "renesas,etheravb-r8a7745" for the R8A7745 SoC.
12       - "renesas,etheravb-r8a77470" for the R8A77470 SoC.
13       - "renesas,etheravb-r8a7790" for the R8A7790 SoC.
14       - "renesas,etheravb-r8a7791" for the R8A7791 SoC.
15       - "renesas,etheravb-r8a7792" for the R8A7792 SoC.
16       - "renesas,etheravb-r8a7793" for the R8A7793 SoC.
17       - "renesas,etheravb-r8a7794" for the R8A7794 SoC.
18       - "renesas,etheravb-rcar-gen2" as a fallback for the above
19                 R-Car Gen2 and RZ/G1 devices.
20
21       - "renesas,etheravb-r8a774a1" for the R8A774A1 SoC.
22       - "renesas,etheravb-r8a774b1" for the R8A774B1 SoC.
23       - "renesas,etheravb-r8a774c0" for the R8A774C0 SoC.
24       - "renesas,etheravb-r8a7795" for the R8A7795 SoC.
25       - "renesas,etheravb-r8a7796" for the R8A77960 SoC.
26       - "renesas,etheravb-r8a77961" for the R8A77961 SoC.
27       - "renesas,etheravb-r8a77965" for the R8A77965 SoC.
28       - "renesas,etheravb-r8a77970" for the R8A77970 SoC.
29       - "renesas,etheravb-r8a77980" for the R8A77980 SoC.
30       - "renesas,etheravb-r8a77990" for the R8A77990 SoC.
31       - "renesas,etheravb-r8a77995" for the R8A77995 SoC.
32       - "renesas,etheravb-rcar-gen3" as a fallback for the above
33                 R-Car Gen3 and RZ/G2 devices.
34
35         When compatible with the generic version, nodes must list the
36         SoC-specific version corresponding to the platform first followed by
37         the generic version.
38
39 - reg: Offset and length of (1) the register block and (2) the stream buffer.
40        The region for the register block is mandatory.
41        The region for the stream buffer is optional, as it is only present on
42        R-Car Gen2 and RZ/G1 SoCs, and on R-Car H3 (R8A7795), M3-W (R8A77960),
43        M3-W+ (R8A77961), and M3-N (R8A77965).
44 - interrupts: A list of interrupt-specifiers, one for each entry in
45               interrupt-names.
46               If interrupt-names is not present, an interrupt specifier
47               for a single muxed interrupt.
48 - phy-mode: see ethernet.txt file in the same directory.
49 - phy-handle: see ethernet.txt file in the same directory.
50 - #address-cells: number of address cells for the MDIO bus, must be equal to 1.
51 - #size-cells: number of size cells on the MDIO bus, must be equal to 0.
52 - clocks: clock phandle and specifier pair.
53 - pinctrl-0: phandle, referring to a default pin configuration node.
54
55 Optional properties:
56 - interrupt-names: A list of interrupt names.
57                    For the R-Car Gen 3 SoCs this property is mandatory;
58                    it should include one entry per channel, named "ch%u",
59                    where %u is the channel number ranging from 0 to 24.
60                    For other SoCs this property is optional; if present
61                    it should contain "mux" for a single muxed interrupt.
62 - pinctrl-names: pin configuration state name ("default").
63 - renesas,no-ether-link: boolean, specify when a board does not provide a proper
64                          AVB_LINK signal.
65 - renesas,ether-link-active-low: boolean, specify when the AVB_LINK signal is
66                                  active-low instead of normal active-high.
67
68 Example:
69
70         ethernet@e6800000 {
71                 compatible = "renesas,etheravb-r8a7795", "renesas,etheravb-rcar-gen3";
72                 reg = <0 0xe6800000 0 0x800>, <0 0xe6a00000 0 0x10000>;
73                 interrupt-parent = <&gic>;
74                 interrupts = <GIC_SPI 39 IRQ_TYPE_LEVEL_HIGH>,
75                              <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>,
76                              <GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>,
77                              <GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>,
78                              <GIC_SPI 43 IRQ_TYPE_LEVEL_HIGH>,
79                              <GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>,
80                              <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>,
81                              <GIC_SPI 46 IRQ_TYPE_LEVEL_HIGH>,
82                              <GIC_SPI 47 IRQ_TYPE_LEVEL_HIGH>,
83                              <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>,
84                              <GIC_SPI 49 IRQ_TYPE_LEVEL_HIGH>,
85                              <GIC_SPI 50 IRQ_TYPE_LEVEL_HIGH>,
86                              <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>,
87                              <GIC_SPI 52 IRQ_TYPE_LEVEL_HIGH>,
88                              <GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH>,
89                              <GIC_SPI 54 IRQ_TYPE_LEVEL_HIGH>,
90                              <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>,
91                              <GIC_SPI 56 IRQ_TYPE_LEVEL_HIGH>,
92                              <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>,
93                              <GIC_SPI 58 IRQ_TYPE_LEVEL_HIGH>,
94                              <GIC_SPI 59 IRQ_TYPE_LEVEL_HIGH>,
95                              <GIC_SPI 60 IRQ_TYPE_LEVEL_HIGH>,
96                              <GIC_SPI 61 IRQ_TYPE_LEVEL_HIGH>,
97                              <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>,
98                              <GIC_SPI 63 IRQ_TYPE_LEVEL_HIGH>;
99                 interrupt-names = "ch0", "ch1", "ch2", "ch3",
100                                   "ch4", "ch5", "ch6", "ch7",
101                                   "ch8", "ch9", "ch10", "ch11",
102                                   "ch12", "ch13", "ch14", "ch15",
103                                   "ch16", "ch17", "ch18", "ch19",
104                                   "ch20", "ch21", "ch22", "ch23",
105                                   "ch24";
106                 clocks = <&cpg CPG_MOD 812>;
107                 power-domains = <&cpg>;
108                 phy-mode = "rgmii-id";
109                 phy-handle = <&phy0>;
110
111                 pinctrl-0 = <&ether_pins>;
112                 pinctrl-names = "default";
113                 renesas,no-ether-link;
114                 #address-cells = <1>;
115                 #size-cells = <0>;
116
117                 phy0: ethernet-phy@0 {
118                         rxc-skew-ps = <900>;
119                         rxdv-skew-ps = <0>;
120                         rxd0-skew-ps = <0>;
121                         rxd1-skew-ps = <0>;
122                         rxd2-skew-ps = <0>;
123                         rxd3-skew-ps = <0>;
124                         txc-skew-ps = <900>;
125                         txen-skew-ps = <0>;
126                         txd0-skew-ps = <0>;
127                         txd1-skew-ps = <0>;
128                         txd2-skew-ps = <0>;
129                         txd3-skew-ps = <0>;
130                         reg = <0>;
131                         interrupt-parent = <&gpio2>;
132                         interrupts = <11 IRQ_TYPE_LEVEL_LOW>;
133                 };
134         };