
This is an extended version of the EMAC DT binding update, this time including the full Linux DTs for all H3, H5 and A64 boards. Patch 01 should be merged *now*, to leave some hint in the README for the v2018.03 release. Without building ARM Trusted Firmware with DEBUG=0 many H5 boards and the Pine64 can't be built successfully at the moment.
The old v2 EMAC DT update series is in patches 02-08, it prepares U-Boot's EMAC driver for using the new DT binding used in Linux, also updates the DTs to the new EMAC DT node already.
This time I added patches to sync the whole U-Boot DT files for the mentioned SoCs with those from Linux. However this first requires lifting the space limit we currently have due to the raw MMC environment. Patch 09 disables that for 64 bit sunxi boards, to give us finally some space. Patch 10 consequently reverts the disabling of features we saw a few weeks ago to migitate the size problem.
Patches 11-20 then brings in the Linux DTs, split by SoCs, with the .dtsi files first, then the board files.
Merging the H3 and H5 device tree files brings in significant changes, also to the structure of the .dtsi files. However U-Boot's own DT usage is pretty limited, so it doesn't matter.
The huge benefit of syncing the DTs is that we can use U-Boot's DT copy to directly pass it to the kernel, avoiding to actually load a .dtb file from somewhere. To allows seamless and automatic UEFI booting, so distribution installer images should just work (TM).
As a goodie the final patch brings in the actual SoPine + baseboard DT files, which we were completely missing so far.
Please let me know if that looks good. I am happy to rearrange or squash patches, but I tried to avoid huge commits, for the sake of reviewability.
Cheers, Andre.
Changelog v2 .. v3: 01: added, was on the list before 02: drop redundant H5 line 03-08: unchanged 09-20: added
Changelog v1 .. v2: 01, 02, 03: unchanged 04, 05, 06, 07: added
Andre Przywara (20): sunxi: README.sunxi64: Add hint about non-debug of ARM Trusted Firmware sunxi: gpio: add missing compatible strings net: sun8i-emac: support new pinctrl DT bindings net: sun8i-emac: add support for new EMAC DT binding arm: dts: sunxi: update A64 to new EMAC binding arm: dts: sunxi: update H3 to new EMAC binding arm: dts: sunxi: update H5 to new EMAC binding net: sun8i-emac: remove support for old binding sunxi: disable direct MMC environment for 64 bit boards sunxi: revert disabling of features sunxi: DT: A64: update device tree file for Allwinner A64 SoC sunxi: DT: A64: update board .dts files from Linux Revert: arm64: allwinner: a64: pine64: Use dcdc1 regulator for mmc0 sunxi: dts: A64 boards: Use fixed regulator for mmc0 sunxi: DT: update device tree files for Allwinner H3 and H5 SoCs sunxi: DT: H5: update board .dts files from Linux sunxi: DT: H3: update board .dts files from Linux sunxi: DT: H3: update libre-cc board .dts file sunxi: DT: H2+: update Opi-zero .dts sunxi: DT: A64: add proper SoPine baseboard device tree
arch/arm/dts/Makefile | 3 +- arch/arm/dts/axp803.dtsi | 150 +++++ arch/arm/dts/sun50i-a64-bananapi-m64.dts | 154 +++++- arch/arm/dts/sun50i-a64-nanopi-a64.dts | 99 ++++ arch/arm/dts/sun50i-a64-olinuxino.dts | 122 +++++ arch/arm/dts/sun50i-a64-orangepi-win.dts | 7 +- arch/arm/dts/sun50i-a64-pine64-plus-u-boot.dtsi | 50 -- arch/arm/dts/sun50i-a64-pine64-plus.dts | 17 +- arch/arm/dts/sun50i-a64-pine64.dts | 171 ++++++ arch/arm/dts/sun50i-a64-sopine-baseboard.dts | 150 +++++ arch/arm/dts/sun50i-a64-sopine.dtsi | 142 +++++ arch/arm/dts/sun50i-a64.dtsi | 204 ++++++- arch/arm/dts/sun50i-h5-nanopi-neo-plus2.dts | 105 +++- arch/arm/dts/sun50i-h5-nanopi-neo2.dts | 89 ++- arch/arm/dts/sun50i-h5-orangepi-pc2.dts | 170 ++++-- arch/arm/dts/sun50i-h5-orangepi-prime.dts | 164 +++++- arch/arm/dts/sun50i-h5-orangepi-zero-plus2.dts | 7 +- arch/arm/dts/sun50i-h5.dtsi | 36 +- arch/arm/dts/sun8i-h2-plus-orangepi-zero.dts | 58 +- arch/arm/dts/sun8i-h3-bananapi-m2-plus.dts | 78 ++- arch/arm/dts/sun8i-h3-libretech-all-h3-cc.dts | 15 +- arch/arm/dts/sun8i-h3-nanopi-m1-plus.dts | 71 +++ arch/arm/dts/sun8i-h3-nanopi-m1.dts | 6 + arch/arm/dts/sun8i-h3-nanopi-neo-air.dts | 1 - arch/arm/dts/sun8i-h3-nanopi-neo.dts | 6 +- arch/arm/dts/sun8i-h3-orangepi-2.dts | 67 ++- arch/arm/dts/sun8i-h3-orangepi-lite.dts | 25 +- arch/arm/dts/sun8i-h3-orangepi-one.dts | 72 ++- arch/arm/dts/sun8i-h3-orangepi-pc-plus.dts | 9 +- arch/arm/dts/sun8i-h3-orangepi-pc.dts | 88 ++- arch/arm/dts/sun8i-h3-orangepi-plus.dts | 37 +- arch/arm/dts/sun8i-h3-orangepi-plus2e.dts | 18 +- arch/arm/dts/sun8i-h3.dtsi | 488 ++--------------- arch/arm/dts/sunxi-h3-h5.dtsi | 698 ++++++++++++++++++++++++ board/sunxi/README.sunxi64 | 6 + cmd/Kconfig | 5 - configs/sopine_baseboard_defconfig | 2 +- drivers/gpio/sunxi_gpio.c | 3 + drivers/net/sun8i_emac.c | 89 ++- drivers/video/Kconfig | 2 - env/Kconfig | 5 +- include/configs/sunxi-common.h | 2 +- include/dt-bindings/clock/sun8i-r-ccu.h | 59 ++ include/dt-bindings/reset/sun8i-r-ccu.h | 53 ++ lib/Kconfig | 1 - 45 files changed, 2980 insertions(+), 824 deletions(-) create mode 100644 arch/arm/dts/axp803.dtsi delete mode 100644 arch/arm/dts/sun50i-a64-pine64-plus-u-boot.dtsi create mode 100644 arch/arm/dts/sun50i-a64-sopine-baseboard.dts create mode 100644 arch/arm/dts/sun50i-a64-sopine.dtsi create mode 100644 arch/arm/dts/sunxi-h3-h5.dtsi create mode 100644 include/dt-bindings/clock/sun8i-r-ccu.h create mode 100644 include/dt-bindings/reset/sun8i-r-ccu.h