# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) %YAML 1.2 --- $id: http://devicetree.org/schemas/net/micrel.yaml# $schema: http://devicetree.org/meta-schemas/core.yaml# title: Micrel KSZ series PHYs and switches maintainers: - Andrew Lunn - Stefan Eichenberger description: The Micrel KSZ series contains different network phys and switches. properties: compatible: enum: - ethernet-phy-id000e.7237 # KSZ8873MLL - ethernet-phy-id0022.1430 # KSZ886X - ethernet-phy-id0022.1435 # KSZ8863 - ethernet-phy-id0022.1510 # KSZ8041 - ethernet-phy-id0022.1537 # KSZ8041RNLI - ethernet-phy-id0022.1550 # KSZ8051 - ethernet-phy-id0022.1555 # KSZ8021 - ethernet-phy-id0022.1556 # KSZ8031 - ethernet-phy-id0022.1560 # KSZ8081, KSZ8091 - ethernet-phy-id0022.1570 # KSZ8061 - ethernet-phy-id0022.161a # KSZ8001 - ethernet-phy-id0022.1720 # KS8737 micrel,fiber-mode: type: boolean description: | If present the PHY is configured to operate in fiber mode. The KSZ8041FTL variant supports fiber mode, enabled by the FXEN boot strapping pin. It can't be determined from the PHY registers whether the PHY is in fiber mode, so this boolean device tree property can be used to describe it. In fiber mode, auto-negotiation is disabled and the PHY can only work in 100base-fx (full and half duplex) modes. micrel,led-mode: $ref: /schemas/types.yaml#/definitions/uint32 description: | LED mode value to set for PHYs with configurable LEDs. Configure the LED mode with single value. The list of PHYs and the bits that are currently supported: KSZ8001: register 0x1e, bits 15..14 KSZ8041: register 0x1e, bits 15..14 KSZ8021: register 0x1f, bits 5..4 KSZ8031: register 0x1f, bits 5..4 KSZ8051: register 0x1f, bits 5..4 KSZ8081: register 0x1f, bits 5..4 KSZ8091: register 0x1f, bits 5..4 See the respective PHY datasheet for the mode values. minimum: 0 maximum: 3 allOf: - $ref: ethernet-phy.yaml# - if: not: properties: compatible: contains: const: ethernet-phy-id0022.1510 then: properties: micrel,fiber-mode: false - if: not: properties: compatible: contains: enum: - ethernet-phy-id0022.1510 - ethernet-phy-id0022.1555 - ethernet-phy-id0022.1556 - ethernet-phy-id0022.1550 - ethernet-phy-id0022.1560 - ethernet-phy-id0022.161a then: properties: micrel,led-mode: false - if: properties: compatible: contains: enum: - ethernet-phy-id0022.1555 - ethernet-phy-id0022.1556 - ethernet-phy-id0022.1560 then: properties: clock-names: const: rmii-ref description: The RMII reference input clock. Used to determine the XI input clock. micrel,rmii-reference-clock-select-25-mhz: type: boolean description: | RMII Reference Clock Select bit selects 25 MHz mode Setting the RMII Reference Clock Select bit enables 25 MHz rather than 50 MHz clock mode. dependentRequired: micrel,rmii-reference-clock-select-25-mhz: [ clock-names ] unevaluatedProperties: false examples: - | mdio { #address-cells = <1>; #size-cells = <0>; ethernet-phy@5 { compatible = "ethernet-phy-id0022.1510"; reg = <5>; micrel,led-mode = <2>; micrel,fiber-mode; }; };