1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2%YAML 1.2 3--- 4$id: http://devicetree.org/schemas/net/aeonsemi,as21xxx.yaml# 5$schema: http://devicetree.org/meta-schemas/core.yaml# 6 7title: Aeonsemi AS21XXX Ethernet PHY 8 9maintainers: 10 - Christian Marangi <ansuelsmth@gmail.com> 11 12description: | 13 Aeonsemi AS21xxx Ethernet PHYs requires a firmware to be loaded to actually 14 work. The same firmware is compatible with various PHYs of the same family. 15 16 A PHY with not firmware loaded will be exposed on the MDIO bus with ID 17 0x7500 0x7500 or 0x7500 0x9410 on C45 registers. 18 19 This can be done and is implemented by OEM in 2 different way: 20 - Attached SPI flash directly to the PHY with the firmware. The PHY 21 will self load the firmware in the presence of this configuration. 22 - Manually provided firmware loaded from a file in the filesystem. 23 24 Each PHY can support up to 5 LEDs. 25 26 AS2xxx PHY Name logic: 27 28 AS21x1xxB1 29 ^ ^^ 30 | |J: Supports SyncE/PTP 31 | |P: No SyncE/PTP support 32 | 1: Supports 2nd Serdes 33 | 2: Not 2nd Serdes support 34 0: 10G, 5G, 2.5G 35 5: 5G, 2.5G 36 2: 2.5G 37 38allOf: 39 - $ref: ethernet-phy.yaml# 40 41select: 42 properties: 43 compatible: 44 contains: 45 enum: 46 - ethernet-phy-id7500.9410 47 - ethernet-phy-id7500.9402 48 - ethernet-phy-id7500.9412 49 - ethernet-phy-id7500.9422 50 - ethernet-phy-id7500.9432 51 - ethernet-phy-id7500.9442 52 - ethernet-phy-id7500.9452 53 - ethernet-phy-id7500.9462 54 - ethernet-phy-id7500.9472 55 - ethernet-phy-id7500.9482 56 - ethernet-phy-id7500.9492 57 required: 58 - compatible 59 60properties: 61 reg: 62 maxItems: 1 63 64 firmware-name: 65 description: specify the name of PHY firmware to load 66 maxItems: 1 67 68required: 69 - compatible 70 - reg 71 72if: 73 properties: 74 compatible: 75 contains: 76 const: ethernet-phy-id7500.9410 77then: 78 required: 79 - firmware-name 80else: 81 properties: 82 firmware-name: false 83 84unevaluatedProperties: false 85 86examples: 87 - | 88 #include <dt-bindings/leds/common.h> 89 90 mdio { 91 #address-cells = <1>; 92 #size-cells = <0>; 93 94 ethernet-phy@1f { 95 compatible = "ethernet-phy-id7500.9410", 96 "ethernet-phy-ieee802.3-c45"; 97 98 reg = <31>; 99 firmware-name = "as21x1x_fw.bin"; 100 101 leds { 102 #address-cells = <1>; 103 #size-cells = <0>; 104 105 led@0 { 106 reg = <0>; 107 color = <LED_COLOR_ID_GREEN>; 108 function = LED_FUNCTION_LAN; 109 function-enumerator = <0>; 110 default-state = "keep"; 111 }; 112 113 led@1 { 114 reg = <1>; 115 color = <LED_COLOR_ID_GREEN>; 116 function = LED_FUNCTION_LAN; 117 function-enumerator = <1>; 118 default-state = "keep"; 119 }; 120 }; 121 }; 122 }; 123