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