Thread (13 messages) flat view 13 messages, 4 authors, 5h ago
HOTtoday

[PATCH 0/6] sunxi: net: add Ethernet support for X96QPro+

From: Andre Przywara <andre.przywara@arm.com>
Date: 2026-08-03 10:15:26
Also in: linux-arm-kernel, linux-devicetree, linux-sunxi

The X96QPro+ is a TV box with an Allwinner H728 SoC (the same die as the
Allwinner A523). The Ethernet connection is using the secondary GMAC,
connected to a MAXIO MAE0621A-Q2C PHY. The setup is a bit special, as it's
not using a crystal oscillator to clock the PHY, but instead a clock
fanout pin from the SoC.
To make Ethernet work on this device, we need this clock, we need to
adjust the PHY-ID, and we need the devicetree bits:

- To make the PHY operational, the PHY driver needs to enable the fanout
clock. The generic PHY DT binding describes such a clock already, so
the binding needs no addition in this respect, but it's in each PHY
driver's responsibility to take care of that clock enablement, which
is done in the first two patches.

- Also the MAXIO PHY used on the board is the -Q2C variant, which uses a
slightly different PHY-ID than the Q3C variant described in the current
version of the driver. Add this new PHY-ID to the driver, but also
allow it in the DT binding, since we need to use that PHY-ID compatible
string version, to skip the MDIO probing process, which wouldn't work
without the clock. This is done in patches 3 and 4.

- Lastly we need to describe the config in the board's devicetree. Patch
5 adds clock fanout pins to the .dtsi, which the final patch 6 enables
the MAC and PHY nodes and connects them together.

This enables the box' Ethernet functionality, made possible by the new
MAXIO PHY driver. The MAC part is already supported for a few releases.

This is based on v7.2-rc1, plus version 2 of the MAXIO PHY driver as
sent by Liu Changjie. Since those two patches have been reviewed already
some weeks back, I assume they are ready to go. Please let me know if
that is not the case and if I can help with anything there.

Cheers,
Andre


Andre Przywara (6):
  net: phy: maxio: prepare for more DT properties
  net: phy: maxio: parse and enable PHY clock from generic DT binding
  dt-bindings: net: Maxio PHY: add PHY-ID for -Q2C variant
  net: phy: maxio: extend PHY ID matching
  arm64: dts: allwinner: a523: add EPHY 25MHz clock fanout pins
  arm64: dts: allwinner: a523: x96qpro+: enable Ethernet support

 .../bindings/net/maxio,mae0621a.yaml          |  4 ++-
 .../arm64/boot/dts/allwinner/sun55i-a523.dtsi | 14 ++++++++++
 .../dts/allwinner/sun55i-h728-x96qpro+.dts    | 28 +++++++++++++++++++
 drivers/net/phy/maxio.c                       | 27 +++++++++++-------
 4 files changed, 62 insertions(+), 11 deletions(-)


base-commit: dc59e4fea9d83f03bad6bddf3fa2e52491777482
prerequisite-patch-id: aa3058cd68d68f361088b39cac0b12fb96be8b55
prerequisite-patch-id: 90f19ec9993e373e39efda42984c88d7b51151e5
-- 
2.43.0
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help