[U-Boot] [PATCH 0/6] sunxi: update sun8i-emac driver DT binding

Andre Przywara andre.przywara at arm.com
Mon Jul 3 00:59:12 UTC 2017


The Ethernet MAC used in newer Allwinner SoCs (H3, A64, H5) is about to
get an upstream Linux driver very soon (it's already lurking in -next).
To support the different binding used for that, enhance our U-Boot driver
to be able to cope with both DT descriptions.
This series contains two parts:
Patch 1 and 2 make it easier for more A64 boards to use Ethernet, by
renaming the existing sun50i-a64-pine64-plus-u-boot.dtsi add-on file to
use a more generic name and symlinking each board to. This remains a
kludge for now until the new Linux DT gets merged in.
Patches 3 till 6 now enhance the DT parsing routine in the EMAC driver to
teach it to cope with both the old and new style binding:
- Allow the new pinctrl bindings.
- Find the syscon address referenced by a phandle in "syscon".
- Find the PHY node referenced by "phy-handle" (not just "phy").
- Adjust the syscon address according to the binding used.
- Determine usage of the internal PHY by using the MII protocol.

So this series prepares U-Boot for merging in new Linux DTs later, which
will describe the EMAC and PHY using the new binding instead.

Cheers,
Andre.

Andre Przywara (6):
  sunxi: A64: dts: replace EMAC .dtsi with symlink
  sunxi: A64: dts: add Ethernet support for BPi-M64 and OPi-Win
  libfdt: add fdtdec_lookup_phandle_index()
  sunxi: GPIO: introduce sunxi_gpio_setup_dt_pins()
  net: sun8i-emac: use new, generic GPIO setup routine
  net: sun8i-emac: add support for new DT binding

 arch/arm/dts/sun50i-a64-bananapi-m64-u-boot.dtsi |   1 +
 arch/arm/dts/sun50i-a64-orangepi-win-u-boot.dtsi |   1 +
 arch/arm/dts/sun50i-a64-pine64-plus-u-boot.dtsi  |  51 +----------
 arch/arm/dts/sun50i-a64-rgmii-emac.dtsi          |  50 +++++++++++
 arch/arm/include/asm/arch-sunxi/gpio.h           |   3 +
 arch/arm/mach-sunxi/pinmux.c                     |  79 +++++++++++++++++
 drivers/net/sun8i_emac.c                         | 105 +++++++++++------------
 include/fdtdec.h                                 |  12 +++
 lib/fdtdec.c                                     |  16 +++-
 9 files changed, 211 insertions(+), 107 deletions(-)
 create mode 120000 arch/arm/dts/sun50i-a64-bananapi-m64-u-boot.dtsi
 create mode 120000 arch/arm/dts/sun50i-a64-orangepi-win-u-boot.dtsi
 mode change 100644 => 120000 arch/arm/dts/sun50i-a64-pine64-plus-u-boot.dtsi
 create mode 100644 arch/arm/dts/sun50i-a64-rgmii-emac.dtsi

-- 
2.8.2



More information about the U-Boot mailing list