# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) %YAML 1.2 --- $id: http://devicetree.org/schemas/net/smsc,lan9115.yaml# $schema: http://devicetree.org/meta-schemas/core.yaml# title: Smart Mixed-Signal Connectivity (SMSC) LAN911x/912x Controller maintainers: - Shawn Guo allOf: - $ref: ethernet-controller.yaml# properties: compatible: oneOf: - const: smsc,lan9115 - items: - enum: - smsc,lan89218 - smsc,lan9117 - smsc,lan9118 - smsc,lan9220 - smsc,lan9221 - const: smsc,lan9115 reg: maxItems: 1 reg-shift: true reg-io-width: enum: [ 2, 4 ] default: 2 interrupts: minItems: 1 items: - description: LAN interrupt line - description: Optional PME (power management event) interrupt that is able to wake up the host system with a 50ms pulse on network activity clocks: maxItems: 1 phy-mode: true smsc,irq-active-high: type: boolean description: Indicates the IRQ polarity is active-high smsc,irq-push-pull: type: boolean description: Indicates the IRQ type is push-pull smsc,force-internal-phy: type: boolean description: Forces SMSC LAN controller to use internal PHY smsc,force-external-phy: type: boolean description: Forces SMSC LAN controller to use external PHY smsc,save-mac-address: type: boolean description: Indicates that MAC address needs to be saved before resetting the controller reset-gpios: maxItems: 1 description: A GPIO line connected to the RESET (active low) signal of the device. On many systems this is wired high so the device goes out of reset at power-on, but if it is under program control, this optional GPIO can wake up in response to it. vdd33a-supply: description: 3.3V analog power supply vddvario-supply: description: IO logic power supply required: - compatible - reg - interrupts # There are lots of bus-specific properties ("qcom,*", "samsung,*", "fsl,*", # "gpmc,*", ...) to be found, that actually depend on the compatible value of # the parent node. additionalProperties: true examples: - | #include ethernet@f4000000 { compatible = "smsc,lan9220", "smsc,lan9115"; reg = <0xf4000000 0x2000000>; phy-mode = "mii"; interrupt-parent = <&gpio1>; interrupts = <31>, <32>; reset-gpios = <&gpio1 30 GPIO_ACTIVE_LOW>; reg-io-width = <4>; smsc,irq-push-pull; };