Merge tag 'gpio-v4.9-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux...
[cascardo/linux.git] / Documentation / devicetree / bindings / net / arc_emac.txt
1 * Synopsys ARC EMAC 10/100 Ethernet driver (EMAC)
2
3 Required properties:
4 - compatible: Should be "snps,arc-emac"
5 - reg: Address and length of the register set for the device
6 - interrupts: Should contain the EMAC interrupts
7 - max-speed: see ethernet.txt file in the same directory.
8 - phy: see ethernet.txt file in the same directory.
9
10 Optional properties:
11 - phy-reset-gpios : Should specify the gpio for phy reset
12 - phy-reset-duration : Reset duration in milliseconds.  Should present
13   only if property "phy-reset-gpios" is available.  Missing the property
14   will have the duration be 1 millisecond.  Numbers greater than 1000 are
15   invalid and 1 millisecond will be used instead.
16
17 Clock handling:
18 The clock frequency is needed to calculate and set polling period of EMAC.
19 It must be provided by one of:
20 - clock-frequency: CPU frequency.
21 - clocks: reference to the clock supplying the EMAC.
22
23 Child nodes of the driver are the individual PHY devices connected to the
24 MDIO bus. They must have a "reg" property given the PHY address on the MDIO bus.
25
26 Examples:
27
28         ethernet@c0fc2000 {
29                 compatible = "snps,arc-emac";
30                 reg = <0xc0fc2000 0x3c>;
31                 interrupts = <6>;
32                 mac-address = [ 00 11 22 33 44 55 ];
33
34                 clock-frequency = <80000000>;
35                 /* or */
36                 clocks = <&emac_clock>;
37
38                 max-speed = <100>;
39                 phy = <&phy0>;
40
41                 #address-cells = <1>;
42                 #size-cells = <0>;
43                 phy0: ethernet-phy@0 {
44                         reg = <1>;
45                 };
46         };