Merge tag 'block-5.14-2021-08-07' of git://git.kernel.dk/linux-block
[linux-2.6-microblaze.git] / Documentation / devicetree / bindings / net / smsc,lan9115.yaml
1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2 %YAML 1.2
3 ---
4 $id: http://devicetree.org/schemas/net/smsc,lan9115.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
6
7 title: Smart Mixed-Signal Connectivity (SMSC) LAN911x/912x Controller
8
9 maintainers:
10   - Shawn Guo <shawnguo@kernel.org>
11
12 allOf:
13   - $ref: ethernet-controller.yaml#
14
15 properties:
16   compatible:
17     oneOf:
18       - const: smsc,lan9115
19       - items:
20           - enum:
21               - smsc,lan89218
22               - smsc,lan9117
23               - smsc,lan9118
24               - smsc,lan9220
25               - smsc,lan9221
26           - const: smsc,lan9115
27
28   reg:
29     maxItems: 1
30
31   reg-shift: true
32
33   reg-io-width:
34     enum: [ 2, 4 ]
35     default: 2
36
37   interrupts:
38     minItems: 1
39     items:
40       - description:
41           LAN interrupt line
42       - description:
43           Optional PME (power management event) interrupt that is able to wake
44           up the host system with a 50ms pulse on network activity
45
46   clocks:
47     maxItems: 1
48
49   phy-mode: true
50
51   smsc,irq-active-high:
52     type: boolean
53     description: Indicates the IRQ polarity is active-high
54
55   smsc,irq-push-pull:
56     type: boolean
57     description: Indicates the IRQ type is push-pull
58
59   smsc,force-internal-phy:
60     type: boolean
61     description: Forces SMSC LAN controller to use internal PHY
62
63   smsc,force-external-phy:
64     type: boolean
65     description: Forces SMSC LAN controller to use external PHY
66
67   smsc,save-mac-address:
68     type: boolean
69     description:
70       Indicates that MAC address needs to be saved before resetting the
71       controller
72
73   reset-gpios:
74     maxItems: 1
75     description:
76       A GPIO line connected to the RESET (active low) signal of the device.
77       On many systems this is wired high so the device goes out of reset at
78       power-on, but if it is under program control, this optional GPIO can
79       wake up in response to it.
80
81   vdd33a-supply:
82     description: 3.3V analog power supply
83
84   vddvario-supply:
85     description: IO logic power supply
86
87 required:
88   - compatible
89   - reg
90   - interrupts
91
92 # There are lots of bus-specific properties ("qcom,*", "samsung,*", "fsl,*",
93 # "gpmc,*", ...) to be found, that actually depend on the compatible value of
94 # the parent node.
95 additionalProperties: true
96
97 examples:
98   - |
99     #include <dt-bindings/gpio/gpio.h>
100
101     ethernet@f4000000 {
102             compatible = "smsc,lan9220", "smsc,lan9115";
103             reg = <0xf4000000 0x2000000>;
104             phy-mode = "mii";
105             interrupt-parent = <&gpio1>;
106             interrupts = <31>, <32>;
107             reset-gpios = <&gpio1 30 GPIO_ACTIVE_LOW>;
108             reg-io-width = <4>;
109             smsc,irq-push-pull;
110     };