blob: f86667cbcca8993cb9e0c3abda2ab291e3c06ac3 [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001# 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
15properties:
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
87required:
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.
95additionalProperties: true
96
97examples:
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 };