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