There are two boot options for a 88X3310 PHY: 1. Device loads its firmware from a dedicated serial FLASH 2. Device waits for its firmware to be downloaded over XMDIO 1/4 adds support for the second option. The device reports which mode it is in via a register, so we only attempt to load a firmware in this situation. Crucially, if firmware is not available in this case, the device is not usable _at all_, so we are forced to fail the probe entirely. 2/4 extends the power up sequence to cover cases where the device has been hardware strapped to start powered down, in which case all internal units will be powered down. 3/4 adds support for the LED controller in the PHY. A special DT attribute is added to control the polarity and drive behavior of each LED, which we document in 4/4. Tobias Waldekranz (4): net: phy: marvell10g: Support firmware loading on 88X3310 net: phy: marvell10g: Fix power-up when strapped to start powered down net: phy: marvell10g: Add LED support for 88X3310 dt-bindings: net: marvell10g: Document LED polarity .../bindings/net/marvell,marvell10g.yaml | 60 ++ MAINTAINERS | 1 + drivers/net/phy/marvell10g.c | 602 +++++++++++++++++- 3 files changed, 660 insertions(+), 3 deletions(-) create mode 100644 Documentation/devicetree/bindings/net/marvell,marvell10g.yaml -- 2.34.1