Merge branch 'for-linus' of git://git.kernel.dk/linux-block
[sfrench/cifs-2.6.git] / Documentation / devicetree / 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-r8a7743" for the R8A7743 SoC.
9       - "renesas,etheravb-r8a7745" for the R8A7745 SoC.
10       - "renesas,etheravb-r8a7790" for the R8A7790 SoC.
11       - "renesas,etheravb-r8a7791" for the R8A7791 SoC.
12       - "renesas,etheravb-r8a7792" for the R8A7792 SoC.
13       - "renesas,etheravb-r8a7793" for the R8A7793 SoC.
14       - "renesas,etheravb-r8a7794" for the R8A7794 SoC.
15       - "renesas,etheravb-rcar-gen2" as a fallback for the above
16                 R-Car Gen2 and RZ/G1 devices.
17
18       - "renesas,etheravb-r8a7795" for the R8A7795 SoC.
19       - "renesas,etheravb-r8a7796" for the R8A7796 SoC.
20       - "renesas,etheravb-r8a77970" for the R8A77970 SoC.
21       - "renesas,etheravb-r8a77995" for the R8A77995 SoC.
22       - "renesas,etheravb-rcar-gen3" as a fallback for the above
23                 R-Car Gen3 devices.
24
25         When compatible with the generic version, nodes must list the
26         SoC-specific version corresponding to the platform first followed by
27         the generic version.
28
29 - reg: offset and length of (1) the register block and (2) the stream buffer.
30 - interrupts: A list of interrupt-specifiers, one for each entry in
31               interrupt-names.
32               If interrupt-names is not present, an interrupt specifier
33               for a single muxed interrupt.
34 - phy-mode: see ethernet.txt file in the same directory.
35 - phy-handle: see ethernet.txt file in the same directory.
36 - #address-cells: number of address cells for the MDIO bus, must be equal to 1.
37 - #size-cells: number of size cells on the MDIO bus, must be equal to 0.
38 - clocks: clock phandle and specifier pair.
39 - pinctrl-0: phandle, referring to a default pin configuration node.
40
41 Optional properties:
42 - interrupt-parent: the phandle for the interrupt controller that services
43                     interrupts for this device.
44 - interrupt-names: A list of interrupt names.
45                    For the R-Car Gen 3 SoCs this property is mandatory;
46                    it should include one entry per channel, named "ch%u",
47                    where %u is the channel number ranging from 0 to 24.
48                    For other SoCs this property is optional; if present
49                    it should contain "mux" for a single muxed interrupt.
50 - pinctrl-names: pin configuration state name ("default").
51 - renesas,no-ether-link: boolean, specify when a board does not provide a proper
52                          AVB_LINK signal.
53 - renesas,ether-link-active-low: boolean, specify when the AVB_LINK signal is
54                                  active-low instead of normal active-high.
55
56 Example:
57
58         ethernet@e6800000 {
59                 compatible = "renesas,etheravb-r8a7795", "renesas,etheravb-rcar-gen3";
60                 reg = <0 0xe6800000 0 0x800>, <0 0xe6a00000 0 0x10000>;
61                 interrupt-parent = <&gic>;
62                 interrupts = <GIC_SPI 39 IRQ_TYPE_LEVEL_HIGH>,
63                              <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>,
64                              <GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>,
65                              <GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>,
66                              <GIC_SPI 43 IRQ_TYPE_LEVEL_HIGH>,
67                              <GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>,
68                              <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>,
69                              <GIC_SPI 46 IRQ_TYPE_LEVEL_HIGH>,
70                              <GIC_SPI 47 IRQ_TYPE_LEVEL_HIGH>,
71                              <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>,
72                              <GIC_SPI 49 IRQ_TYPE_LEVEL_HIGH>,
73                              <GIC_SPI 50 IRQ_TYPE_LEVEL_HIGH>,
74                              <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>,
75                              <GIC_SPI 52 IRQ_TYPE_LEVEL_HIGH>,
76                              <GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH>,
77                              <GIC_SPI 54 IRQ_TYPE_LEVEL_HIGH>,
78                              <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>,
79                              <GIC_SPI 56 IRQ_TYPE_LEVEL_HIGH>,
80                              <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>,
81                              <GIC_SPI 58 IRQ_TYPE_LEVEL_HIGH>,
82                              <GIC_SPI 59 IRQ_TYPE_LEVEL_HIGH>,
83                              <GIC_SPI 60 IRQ_TYPE_LEVEL_HIGH>,
84                              <GIC_SPI 61 IRQ_TYPE_LEVEL_HIGH>,
85                              <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>,
86                              <GIC_SPI 63 IRQ_TYPE_LEVEL_HIGH>;
87                 interrupt-names = "ch0", "ch1", "ch2", "ch3",
88                                   "ch4", "ch5", "ch6", "ch7",
89                                   "ch8", "ch9", "ch10", "ch11",
90                                   "ch12", "ch13", "ch14", "ch15",
91                                   "ch16", "ch17", "ch18", "ch19",
92                                   "ch20", "ch21", "ch22", "ch23",
93                                   "ch24";
94                 clocks = <&cpg CPG_MOD 812>;
95                 power-domains = <&cpg>;
96                 phy-mode = "rgmii-id";
97                 phy-handle = <&phy0>;
98
99                 pinctrl-0 = <&ether_pins>;
100                 pinctrl-names = "default";
101                 renesas,no-ether-link;
102                 #address-cells = <1>;
103                 #size-cells = <0>;
104
105                 phy0: ethernet-phy@0 {
106                         rxc-skew-ps = <900>;
107                         rxdv-skew-ps = <0>;
108                         rxd0-skew-ps = <0>;
109                         rxd1-skew-ps = <0>;
110                         rxd2-skew-ps = <0>;
111                         rxd3-skew-ps = <0>;
112                         txc-skew-ps = <900>;
113                         txen-skew-ps = <0>;
114                         txd0-skew-ps = <0>;
115                         txd1-skew-ps = <0>;
116                         txd2-skew-ps = <0>;
117                         txd3-skew-ps = <0>;
118                         reg = <0>;
119                         interrupt-parent = <&gpio2>;
120                         interrupts = <11 IRQ_TYPE_LEVEL_LOW>;
121                 };
122         };