Re: [PATCH 00/12] sunxi: Devicetree sync from Linux v5.18-rc1

Andre Przywara
2022-04-29T14:52:12Z

On Wed, 27 Apr 2022 15:31:19 -0500
Samuel Holland <samuel@sholland.org> wrote:

Hi Samuel, Tom,

> This series brings all of our devicetrees up to date with Linux.
>
> Older SoCs (before A83T) have not been synchronized in over 3 years.
> And I don't have any of this hardware to test. But there are not major
> changes to those devicetrees either.
>
> The big motivation for including older SoCs in this update is converting
> the USB PHY driver to get its VBUS detection GPIO/regulator from the
> devicetree instead of from a pin name in Kconfig. Many older boards had
> those properties added or fixed since the last devicetree sync. This PHY
> driver change is necessary to complete the DM_GPIO migration.
>
> A couple of breaking changes were made to several SoCs' devicetrees in
> Linux relating to the "r_intc" interrupt controller. New kernels support
> old devicetrees, but not the other way around. So to be most compatible
> and avoid regressions, those changes are skipped here.

Many thanks for considering this! I just skimmed over the A64 and H6
patches, and this is indeed the only difference.

But while I love this pragmatic approach, and would be happy to take this,
this goes against our own rules, and more importantly against Tom's one's:
to take only direct DT file copies from the kernel tree.

Tom, can you give your opinion here? As Samuel mentioned above, the
current mainline DTs wouldn't boot on older kernels (the changes affect
critical devices), so this spoils stable distro and installer kernels,
when using $fdtcontroladdr, for instance when booting via UEFI.

As a side effect of always defining SYS_SOC to "sunxi", we cannot easily
use per-SoC DT overrides using sun50i-a64-u-boot.dtsi, for instance.

For context, those changed properties were in the mainline kernel tree at
some point, but have been amended since. So it's not some random change.

Cheers,
Andre

> Samuel Holland (12):
> dt-bindings: sunxi: Update clock/reset binding headers
> ARM: dts: sunxi: Remove unused devicetree headers
> ARM: dts: sun4i: Sync from Linux v5.18-rc1
> ARM: dts: sun7i: Sync from Linux v5.18-rc1
> ARM: dts: sunxi: A13/A31/A23/A33: Sync from Linux v5.18-rc1
> ARM: dts: sun9i: Sync from Linux v5.18-rc1
> ARM: dts: sun8i: A83T: Sync from Linux v5.18-rc1
> ARM: dts: sunxi: H2+/H3/H5: Sync from Linux v5.18-rc1
> ARM: dts: sun8i: V3/V3s/S3: Sync from Linux v5.18-rc1
> ARM: dts: sun8i: R40/T3: Sync from Linux v5.18-rc1
> ARM: dts: sun50i: A64: Sync from Linux v5.18-rc1
> ARM: dts: sun50i: H6: Sync from Linux v5.18-rc1
>
> arch/arm/dts/Makefile | 25 +-
> arch/arm/dts/axp209.dtsi | 6 +-
> arch/arm/dts/axp22x.dtsi | 11 +-
> arch/arm/dts/axp803.dtsi | 10 +-
> arch/arm/dts/axp81x.dtsi | 15 +-
> arch/arm/dts/sun4i-a10-a1000.dts | 31 +-
> arch/arm/dts/sun4i-a10-ba10-tvbox.dts | 2 +-
> arch/arm/dts/sun4i-a10-chuwi-v7-cw0825.dts | 20 +-
> arch/arm/dts/sun4i-a10-cubieboard.dts | 16 +-
> arch/arm/dts/sun4i-a10-dserve-dsrv9703c.dts | 21 +-
> arch/arm/dts/sun4i-a10-hackberry.dts | 2 +-
> arch/arm/dts/sun4i-a10-hyundai-a7hd.dts | 20 +-
> arch/arm/dts/sun4i-a10-inet1.dts | 21 +-
> arch/arm/dts/sun4i-a10-inet97fv2.dts | 22 +-
> arch/arm/dts/sun4i-a10-inet9f-rev03.dts | 74 ++--
> .../dts/sun4i-a10-itead-iteaduino-plus.dts | 2 +-
> arch/arm/dts/sun4i-a10-jesurun-q5.dts | 4 +-
> arch/arm/dts/sun4i-a10-marsboard.dts | 22 +-
> arch/arm/dts/sun4i-a10-olinuxino-lime.dts | 33 +-
> arch/arm/dts/sun4i-a10-pcduino.dts | 20 +-
> arch/arm/dts/sun4i-a10-pov-protab2-ips9.dts | 21 +-
> arch/arm/dts/sun4i-a10-topwise-a721.dts | 242 +++++++++++++
> arch/arm/dts/sun4i-a10.dtsi | 135 ++++++-
> arch/arm/dts/sun50i-a64-cpu-opp.dtsi | 2 +-
> arch/arm/dts/sun50i-a64-orangepi-win.dts | 2 +-
> arch/arm/dts/sun50i-a64-pinebook.dts | 1 +
> arch/arm/dts/sun50i-a64-pinephone.dtsi | 27 ++
> arch/arm/dts/sun50i-a64-pinetab.dts | 29 +-
> arch/arm/dts/sun50i-a64-teres-i.dts | 4 +-
> arch/arm/dts/sun50i-a64.dtsi | 93 +++--
> arch/arm/dts/sun50i-h5-cpu-opp.dtsi | 2 +-
> arch/arm/dts/sun50i-h5-nanopi-r1s-h5.dts | 9 +-
> arch/arm/dts/sun50i-h5.dtsi | 6 +-
> arch/arm/dts/sun50i-h6-beelink-gs1.dts | 38 +-
> arch/arm/dts/sun50i-h6-cpu-opp.dtsi | 2 +-
> arch/arm/dts/sun50i-h6-orangepi-3.dts | 14 +-
> arch/arm/dts/sun50i-h6-orangepi.dtsi | 22 +-
> arch/arm/dts/sun50i-h6-pine-h64-model-b.dts | 51 +++
> arch/arm/dts/sun50i-h6-tanix-tx6-mini.dts | 15 +
> arch/arm/dts/sun50i-h6-tanix-tx6.dts | 115 +-----
> arch/arm/dts/sun50i-h6-tanix.dtsi | 189 ++++++++++
> arch/arm/dts/sun50i-h6.dtsi | 26 +-
> arch/arm/dts/sun5i-a10s-auxtek-t003.dts | 16 +-
> arch/arm/dts/sun5i-a10s-auxtek-t004.dts | 35 +-
> arch/arm/dts/sun5i-a10s-mk802.dts | 31 +-
> arch/arm/dts/sun5i-a10s-olinuxino-micro.dts | 68 +---
> arch/arm/dts/sun5i-a10s-r7-tv-dongle.dts | 22 +-
> arch/arm/dts/sun5i-a10s-wobo-i5.dts | 34 +-
> arch/arm/dts/sun5i-a10s.dtsi | 30 +-
> arch/arm/dts/sun5i-a13-ampe-a76.dts | 2 +-
> .../dts/sun5i-a13-empire-electronix-d709.dts | 41 +--
> arch/arm/dts/sun5i-a13-hsg-h702.dts | 37 +-
> arch/arm/dts/sun5i-a13-inet-86vs.dts | 2 +-
> ...common.dtsi => sun5i-a13-licheepi-one.dts} | 146 +++++---
> arch/arm/dts/sun5i-a13-olinuxino-micro.dts | 50 +--
> arch/arm/dts/sun5i-a13-olinuxino.dts | 56 +--
> .../dts/sun5i-a13-pocketbook-touch-lux-3.dts | 258 ++++++++++++++
> arch/arm/dts/sun5i-a13-q8-tablet.dts | 18 +-
> arch/arm/dts/sun5i-a13-utoo-p66.dts | 26 +-
> arch/arm/dts/sun5i-a13.dtsi | 23 +-
> arch/arm/dts/sun5i-gr8-chip-pro.dts | 38 +-
> arch/arm/dts/sun5i-gr8-evb.dts | 333 ++++++++++++++++++
> arch/arm/dts/sun5i-gr8.dtsi | 12 +-
> arch/arm/dts/sun5i-r8-chip.dts | 52 +--
> .../dts/sun5i-reference-design-tablet.dtsi | 57 +--
> arch/arm/dts/sun5i.dtsi | 209 +++++++----
> arch/arm/dts/sun6i-a31-app4-evb1.dts | 10 +-
> arch/arm/dts/sun6i-a31-colombus.dts | 57 +--
> arch/arm/dts/sun6i-a31-hummingbird.dts | 75 +---
> arch/arm/dts/sun6i-a31-i7.dts | 47 +--
> arch/arm/dts/sun6i-a31-m9.dts | 46 +--
> arch/arm/dts/sun6i-a31-mele-a1000g-quad.dts | 46 +--
> arch/arm/dts/sun6i-a31-mixtile-loftq.dts | 6 +-
> arch/arm/dts/sun6i-a31.dtsi | 218 +++++++-----
> arch/arm/dts/sun6i-a31s-colorfly-e708-q1.dts | 2 +-
> arch/arm/dts/sun6i-a31s-cs908.dts | 17 +-
> arch/arm/dts/sun6i-a31s-inet-q972.dts | 8 +-
> arch/arm/dts/sun6i-a31s-primo81.dts | 32 +-
> arch/arm/dts/sun6i-a31s-sina31s-core.dtsi | 4 +-
> arch/arm/dts/sun6i-a31s-sina31s.dts | 39 +-
> arch/arm/dts/sun6i-a31s-sinovoip-bpi-m2.dts | 144 +++++---
> .../sun6i-a31s-yones-toptech-bs1078-v2.dts | 22 +-
> .../dts/sun6i-reference-design-tablet.dtsi | 22 +-
> arch/arm/dts/sun7i-a20-bananapi-m1-plus.dts | 16 +-
> arch/arm/dts/sun7i-a20-bananapi.dts | 41 +--
> arch/arm/dts/sun7i-a20-bananapro.dts | 16 +-
> arch/arm/dts/sun7i-a20-cubieboard2.dts | 28 +-
> arch/arm/dts/sun7i-a20-cubietruck.dts | 20 +-
> arch/arm/dts/sun7i-a20-haoyu-marsboard.dts | 182 ++++++++++
> arch/arm/dts/sun7i-a20-hummingbird.dts | 21 +-
> arch/arm/dts/sun7i-a20-i12-tvbox.dts | 16 +-
> arch/arm/dts/sun7i-a20-icnova-swac.dts | 15 +-
> arch/arm/dts/sun7i-a20-itead-ibox.dts | 8 +-
> arch/arm/dts/sun7i-a20-lamobo-r1.dts | 16 +-
> .../dts/sun7i-a20-linutronix-testbox-v2.dts | 47 +++
> arch/arm/dts/sun7i-a20-m3.dts | 14 +-
> arch/arm/dts/sun7i-a20-olimex-som-evb.dts | 14 +-
> arch/arm/dts/sun7i-a20-olimex-som204-evb.dts | 30 +-
> .../arm/dts/sun7i-a20-olinuxino-lime-emmc.dts | 32 ++
> arch/arm/dts/sun7i-a20-olinuxino-lime.dts | 32 +-
> arch/arm/dts/sun7i-a20-olinuxino-lime2.dts | 46 +--
> arch/arm/dts/sun7i-a20-olinuxino-micro.dts | 32 +-
> arch/arm/dts/sun7i-a20-orangepi-mini.dts | 28 +-
> arch/arm/dts/sun7i-a20-orangepi.dts | 26 +-
> arch/arm/dts/sun7i-a20-pcduino3-nano.dts | 32 +-
> arch/arm/dts/sun7i-a20-pcduino3.dts | 28 +-
> arch/arm/dts/sun7i-a20-wexler-tab7200.dts | 13 +-
> arch/arm/dts/sun7i-a20-wits-pro-a20-dkt.dts | 24 +-
> arch/arm/dts/sun7i-a20.dtsi | 254 +++++++++++--
> arch/arm/dts/sun8i-a23-a33.dtsi | 308 ++++++++++++----
> arch/arm/dts/sun8i-a23-evb.dts | 20 +-
> arch/arm/dts/sun8i-a23-gt90h-v4.dts | 2 +-
> ...ommon.dtsi => sun8i-a23-ippo-q8h-v1.2.dts} | 54 ++-
> arch/arm/dts/sun8i-a23-ippo-q8h-v5.dts | 73 ++++
> .../dts/sun8i-a23-polaroid-mid2407pxe03.dts | 15 +-
> .../dts/sun8i-a23-polaroid-mid2809pxe04.dts | 15 +-
> arch/arm/dts/sun8i-a23-q8-tablet.dts | 10 +
> arch/arm/dts/sun8i-a23.dtsi | 26 +-
> ...c-edition.dts => sun8i-a33-et-q8-v1.6.dts} | 32 +-
> arch/arm/dts/sun8i-a33-ga10h-v1.1.dts | 4 +-
> arch/arm/dts/sun8i-a33-inet-d978-rev2.dts | 14 +-
> arch/arm/dts/sun8i-a33-ippo-q8h-v1.2.dts | 57 +++
> arch/arm/dts/sun8i-a33-olinuxino.dts | 12 +-
> arch/arm/dts/sun8i-a33-q8-tablet.dts | 7 +
> arch/arm/dts/sun8i-a33-sinlinx-sina33.dts | 34 +-
> arch/arm/dts/sun8i-a33.dtsi | 270 +++++---------
> .../dts/sun8i-a83t-allwinner-h8homlet-v2.dts | 12 +
> arch/arm/dts/sun8i-a83t-bananapi-m3.dts | 55 ++-
> arch/arm/dts/sun8i-a83t-cubietruck-plus.dts | 77 +++-
> arch/arm/dts/sun8i-a83t-tbs-a711.dts | 101 +++++-
> arch/arm/dts/sun8i-a83t.dtsi | 311 ++++++++++++++--
> .../dts/sun8i-h2-plus-bananapi-m2-zero.dts | 28 +-
> arch/arm/dts/sun8i-h3-beelink-x2.dts | 27 +-
> arch/arm/dts/sun8i-h3-nanopi-neo-air.dts | 28 ++
> arch/arm/dts/sun8i-h3-nanopi-r1.dts | 169 +++++++++
> arch/arm/dts/sun8i-h3-nanopi.dtsi | 1 +
> arch/arm/dts/sun8i-h3-orangepi-2.dts | 3 +-
> arch/arm/dts/sun8i-h3-orangepi-pc.dts | 3 +-
> arch/arm/dts/sun8i-h3.dtsi | 10 +-
> arch/arm/dts/sun8i-q8-common.dtsi | 31 +-
> arch/arm/dts/sun8i-r16-bananapi-m2m.dts | 55 ++-
> .../dts/sun8i-r16-nintendo-nes-classic.dts | 54 +++
> .../sun8i-r16-nintendo-super-nes-classic.dts | 11 +
> arch/arm/dts/sun8i-r16-parrot.dts | 62 +---
> arch/arm/dts/sun8i-r40-feta40i.dtsi | 106 ++++++
> arch/arm/dts/sun8i-r40-oka40i-c.dts | 203 +++++++++++
> arch/arm/dts/sun8i-r40.dtsi | 118 ++++++-
> .../dts/sun8i-reference-design-tablet.dtsi | 33 +-
> arch/arm/dts/sun8i-s3-elimo-impetus.dtsi | 44 +++
> arch/arm/dts/sun8i-s3-elimo-initium.dts | 29 ++
> arch/arm/dts/sun8i-s3-pinecube.dts | 13 +-
> arch/arm/dts/sun8i-t3-cqa3t-bv3.dts | 226 ++++++++++++
> arch/arm/dts/sun8i-v3-sl631-imx179.dts | 12 +
> arch/arm/dts/sun8i-v3-sl631.dtsi | 138 ++++++++
> arch/arm/dts/sun8i-v3.dtsi | 36 ++
> arch/arm/dts/sun8i-v3s-licheepi-zero-dock.dts | 17 +-
> arch/arm/dts/sun8i-v3s.dtsi | 93 ++++-
> arch/arm/dts/sun9i-a80-cubieboard4.dts | 67 +++-
> arch/arm/dts/sun9i-a80-optimus.dts | 50 ++-
> arch/arm/dts/sun9i-a80.dtsi | 195 ++++++----
> arch/arm/dts/sunxi-bananapi-m2-plus-v1.2.dtsi | 18 +-
> arch/arm/dts/sunxi-bananapi-m2-plus.dtsi | 4 +-
> arch/arm/dts/sunxi-common-regulators.dtsi | 39 --
> arch/arm/dts/sunxi-h3-h5.dtsi | 42 ++-
> arch/arm/dts/sunxi-libretech-all-h3-cc.dtsi | 13 +
> arch/arm/dts/sunxi-libretech-all-h3-it.dtsi | 2 +-
> .../dts/sunxi-reference-design-tablet.dtsi | 11 +-
> arch/arm/mach-sunxi/Kconfig | 2 +-
> .../Nintendo_NES_Classic_Edition_defconfig | 2 +-
> include/dt-bindings/clock/sun50i-a64-ccu.h | 2 +-
> include/dt-bindings/clock/sun5i-ccu.h | 13 +-
> include/dt-bindings/clock/sun6i-a31-ccu.h | 2 +
> include/dt-bindings/clock/sun8i-a23-a33-ccu.h | 2 +
> include/dt-bindings/clock/sun8i-h3-ccu.h | 2 +-
> include/dt-bindings/clock/sun8i-v3s-ccu.h | 4 +
> include/dt-bindings/reset/sun5i-ccu.h | 11 +-
> include/dt-bindings/reset/sun8i-v3s-ccu.h | 3 +
> 177 files changed, 5704 insertions(+), 2683 deletions(-)
> create mode 100644 arch/arm/dts/sun4i-a10-topwise-a721.dts
> create mode 100644 arch/arm/dts/sun50i-h6-pine-h64-model-b.dts
> create mode 100644 arch/arm/dts/sun50i-h6-tanix-tx6-mini.dts
> create mode 100644 arch/arm/dts/sun50i-h6-tanix.dtsi
> rename arch/arm/dts/{sun5i-q8-common.dtsi => sun5i-a13-licheepi-one.dts} (62%)
> create mode 100644 arch/arm/dts/sun5i-a13-pocketbook-touch-lux-3.dts
> create mode 100644 arch/arm/dts/sun5i-gr8-evb.dts
> create mode 100644 arch/arm/dts/sun7i-a20-haoyu-marsboard.dts
> create mode 100644 arch/arm/dts/sun7i-a20-linutronix-testbox-v2.dts
> create mode 100644 arch/arm/dts/sun7i-a20-olinuxino-lime-emmc.dts
> rename arch/arm/dts/{sunxi-q8-common.dtsi => sun8i-a23-ippo-q8h-v1.2.dts} (75%)
> create mode 100644 arch/arm/dts/sun8i-a23-ippo-q8h-v5.dts
> rename arch/arm/dts/{sun8i-r16-nintendo-nes-classic-edition.dts => sun8i-a33-et-q8-v1.6.dts} (81%)
> create mode 100644 arch/arm/dts/sun8i-a33-ippo-q8h-v1.2.dts
> create mode 100644 arch/arm/dts/sun8i-h3-nanopi-r1.dts
> create mode 100644 arch/arm/dts/sun8i-r16-nintendo-nes-classic.dts
> create mode 100644 arch/arm/dts/sun8i-r16-nintendo-super-nes-classic.dts
> create mode 100644 arch/arm/dts/sun8i-r40-feta40i.dtsi
> create mode 100644 arch/arm/dts/sun8i-r40-oka40i-c.dts
> create mode 100644 arch/arm/dts/sun8i-s3-elimo-impetus.dtsi
> create mode 100644 arch/arm/dts/sun8i-s3-elimo-initium.dts
> create mode 100644 arch/arm/dts/sun8i-t3-cqa3t-bv3.dts
> create mode 100644 arch/arm/dts/sun8i-v3-sl631-imx179.dts
> create mode 100644 arch/arm/dts/sun8i-v3-sl631.dtsi
>