117 lines · yaml
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)2%YAML 1.23---4$id: http://devicetree.org/schemas/net/marvell,aquantia.yaml#5$schema: http://devicetree.org/meta-schemas/core.yaml#6 7title: Marvell Aquantia Ethernet PHY8 9maintainers:10 - Christian Marangi <ansuelsmth@gmail.com>11 12description: |13 Marvell Aquantia Ethernet PHY require a firmware to be loaded to actually14 work.15 16 This can be done and is implemented by OEM in 3 different way:17 - Attached SPI flash directly to the PHY with the firmware. The PHY18 will self load the firmware in the presence of this configuration.19 - Read from a dedicated partition on system NAND declared in an20 NVMEM cell, and loaded to the PHY using its mailbox interface.21 - Manually provided firmware loaded from a file in the filesystem.22 23allOf:24 - $ref: ethernet-phy.yaml#25 26select:27 properties:28 compatible:29 contains:30 enum:31 - ethernet-phy-id03a1.b44532 - ethernet-phy-id03a1.b46033 - ethernet-phy-id03a1.b4a234 - ethernet-phy-id03a1.b4d035 - ethernet-phy-id03a1.b4e036 - ethernet-phy-id03a1.b5c237 - ethernet-phy-id03a1.b4b038 - ethernet-phy-id03a1.b66239 - ethernet-phy-id03a1.b71240 - ethernet-phy-id31c3.1c1241 required:42 - compatible43 44properties:45 reg:46 maxItems: 147 48 firmware-name:49 description: specify the name of PHY firmware to load50 51 nvmem-cells:52 description: phandle to the firmware nvmem cell53 maxItems: 154 55 nvmem-cell-names:56 const: firmware57 58required:59 - compatible60 - reg61 62unevaluatedProperties: false63 64examples:65 - |66 mdio {67 #address-cells = <1>;68 #size-cells = <0>;69 70 ethernet-phy@0 {71 compatible = "ethernet-phy-id31c3.1c12",72 "ethernet-phy-ieee802.3-c45";73 74 reg = <0>;75 firmware-name = "AQR-G4_v5.4.C-AQR_CIG_WF-1945_0x8_ID44776_VER1630.cld";76 };77 78 ethernet-phy@1 {79 compatible = "ethernet-phy-id31c3.1c12",80 "ethernet-phy-ieee802.3-c45";81 82 reg = <1>;83 nvmem-cells = <&aqr_fw>;84 nvmem-cell-names = "firmware";85 };86 };87 88 flash {89 compatible = "jedec,spi-nor";90 #address-cells = <1>;91 #size-cells = <1>;92 93 partitions {94 compatible = "fixed-partitions";95 #address-cells = <1>;96 #size-cells = <1>;97 98 /* ... */99 100 partition@650000 {101 compatible = "nvmem-cells";102 label = "0:ethphyfw";103 reg = <0x650000 0x80000>;104 read-only;105 #address-cells = <1>;106 #size-cells = <1>;107 108 aqr_fw: aqr_fw@0 {109 reg = <0x0 0x5f42a>;110 };111 };112 113 /* ... */114 115 };116 };117