[U-Boot] [PATCH v2 0/6] sunxi: update sun8i-emac driver and A64 DTs

Andre Przywara andre.przywara at arm.com
Sun Jul 23 22:56:34 UTC 2017


This patch set updates the latest device trees for Allwinner A64 based
boards from Linux. In contrast to v1 I now took the actual 4.13-rc1 DTs
from Linux, which restructures the patch set a bit.

The big advantage of having the very same DTs in U-Boot
is that we can use UEFI boot much more easily, because U-Boot can just
pass on its own DT, without having to find and load some external version.
This makes UEFI based installers boot out of the box, which is a big relief.
Linux 4.13-rc1 saw the addition of the sun8i-emac Ethernet driver, for
which U-Boot has a driver for quite a while, but with a slightly different
binding, so this series makes it compatible.
Patch 1/6 adds some missing compatible strings, it was on the list before,
but I add it to this series because it is a prerequisite for the following
patches. Patches 2 till 4 add some code to be able to parse the new pinctrl
bindings that newer Allwinner DTs use.
Patch 5 extends U-Boot sun8i-emac driver to be able to properly parse the
DT binding used by the new Linux driver as well.
Patch 6 then actually replaces the DTs for A64 boards with the exact version
as of the Linux tree (v4.13-rc1).
This allows us to *almost* get rid of out *-u-boot.dtsi kludge, but we
still need the alias, which the Linux version doesn't have, so this file
still contains this one line, effectively.

I am still not convinced that having a full featured pinctrl driver in
U-Boot is the right thing, so I cheekily ignore this part of the comments.
If people consider this a requirement, we can have a look at this, but
I don't see any reply since the first patch was posted some months ago,
so I guess this takes much more time.

Also my apologies for not having looked at the syscon driver change Simon
asked. It looks like a reasonable change, but I am about to leave for
holidays and didn't want to postpone an updated version any longer.

Cheers,
Andre.

Andre Przywara (6):
  sunxi: gpio: add missing compatible strings
  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
  sunxi: A64: update Linux DTs

 arch/arm/dts/sun50i-a64-bananapi-m64-u-boot.dtsi |   5 +
 arch/arm/dts/sun50i-a64-bananapi-m64.dts         |  16 ++-
 arch/arm/dts/sun50i-a64-orangepi-win.dts         |   7 +-
 arch/arm/dts/sun50i-a64-pine64-plus-u-boot.dtsi  |  45 -------
 arch/arm/dts/sun50i-a64-pine64-plus.dts          |  17 ++-
 arch/arm/dts/sun50i-a64-pine64.dts               |  57 +++++++++
 arch/arm/dts/sun50i-a64.dtsi                     | 142 ++++++++++++++++++++---
 arch/arm/include/asm/arch-sunxi/gpio.h           |   3 +
 arch/arm/mach-sunxi/pinmux.c                     |  79 +++++++++++++
 drivers/gpio/sunxi_gpio.c                        |   4 +
 drivers/net/sun8i_emac.c                         | 105 +++++++++--------
 include/dt-bindings/clock/sun8i-r-ccu.h          |  59 ++++++++++
 include/fdtdec.h                                 |  12 ++
 lib/fdtdec.c                                     |  16 ++-
 14 files changed, 441 insertions(+), 126 deletions(-)
 create mode 100644 arch/arm/dts/sun50i-a64-bananapi-m64-u-boot.dtsi
 create mode 100644 include/dt-bindings/clock/sun8i-r-ccu.h

-- 
2.8.2



More information about the U-Boot mailing list