.../devicetree/bindings/arm/sunxi.yaml | 5 + arch/arm64/boot/dts/allwinner/Makefile | 1 + .../allwinner/sun50i-h616-orangepi-zero2.dts | 119 +--------------- .../allwinner/sun50i-h616-orangepi-zerox.dtsi | 131 ++++++++++++++++++ .../allwinner/sun50i-h618-orangepi-zero3.dts | 86 ++++++++++++ 5 files changed, 224 insertions(+), 118 deletions(-) create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-h616-orangepi-zerox.dtsi create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-h618-orangepi-zero3.dts
Hi, Orange Pi recently released the Orange Pi Zero 3 board, which is some updated version of their former Zero 2 development board. Some component changes (Motorcomm PHY instead of Realtek, different PMIC), some board layout changes, and it ships with up to 4GB of DRAM now. The SoC is now labelled H618 instead of H616, which apparently is the same, just with more L2 cache. Split the existing OPi Zero2 DT, to allow sharing most DT nodes, then add the binding documentation and DT for the new board. Linux v6.5-rc boots out of the box (the PMIC driver just made it in), and most things work: UART, PSCI, GPIO, SPI flash, SD card, USB. Ethernet is almost working, I get an IP address via DHCP, but no further packets come through. Might be either a problem with the new Motorcomm PHY driver, or some missing delay settings, I have to investigate, any help or advice welcome. Also let me know if the DT split is a good idea or not, happy to roll that back if requested. Cheers, Andre Andre Przywara (3): arm64: dts: allwinner: h616: Split Orange Pi Zero 2 DT dt-bindings: arm: sunxi: document Orange Pi Zero 3 board name arm64: dts: allwinner: h616: Add OrangePi Zero 3 board support .../devicetree/bindings/arm/sunxi.yaml | 5 + arch/arm64/boot/dts/allwinner/Makefile | 1 + .../allwinner/sun50i-h616-orangepi-zero2.dts | 119 +--------------- .../allwinner/sun50i-h616-orangepi-zerox.dtsi | 131 ++++++++++++++++++ .../allwinner/sun50i-h618-orangepi-zero3.dts | 86 ++++++++++++ 5 files changed, 224 insertions(+), 118 deletions(-) create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-h616-orangepi-zerox.dtsi create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-h618-orangepi-zero3.dts -- 2.35.8
Dne ponedeljek, 31. julij 2023 ob 03:17:22 CEST je Andre Przywara napisal(a): > Hi, > > Orange Pi recently released the Orange Pi Zero 3 board, which is some > updated version of their former Zero 2 development board. Some component > changes (Motorcomm PHY instead of Realtek, different PMIC), some board > layout changes, and it ships with up to 4GB of DRAM now. The SoC is now > labelled H618 instead of H616, which apparently is the same, just with > more L2 cache. > > Split the existing OPi Zero2 DT, to allow sharing most DT nodes, then > add the binding documentation and DT for the new board. > > Linux v6.5-rc boots out of the box (the PMIC driver just made it in), > and most things work: UART, PSCI, GPIO, SPI flash, SD card, USB. > Ethernet is almost working, I get an IP address via DHCP, but no further > packets come through. Might be either a problem with the new Motorcomm > PHY driver, or some missing delay settings, I have to investigate, any > help or advice welcome. When I worked with Motorcomm PHYs, I had to add motorcomm,clk-out-frequency-hz = <125000000>; and usual reset gpio related properties. Have you tried that? In any case, it's not 100% reliable, but I don't know why. Best regards, Jernej > Also let me know if the DT split is a good idea or not, happy to roll > that back if requested. > > Cheers, > Andre > > Andre Przywara (3): > arm64: dts: allwinner: h616: Split Orange Pi Zero 2 DT > dt-bindings: arm: sunxi: document Orange Pi Zero 3 board name > arm64: dts: allwinner: h616: Add OrangePi Zero 3 board support > > .../devicetree/bindings/arm/sunxi.yaml | 5 + > arch/arm64/boot/dts/allwinner/Makefile | 1 + > .../allwinner/sun50i-h616-orangepi-zero2.dts | 119 +--------------- > .../allwinner/sun50i-h616-orangepi-zerox.dtsi | 131 ++++++++++++++++++ > .../allwinner/sun50i-h618-orangepi-zero3.dts | 86 ++++++++++++ > 5 files changed, 224 insertions(+), 118 deletions(-) > create mode 100644 > arch/arm64/boot/dts/allwinner/sun50i-h616-orangepi-zerox.dtsi create mode > 100644 arch/arm64/boot/dts/allwinner/sun50i-h618-orangepi-zero3.dts
On Thu, 03 Aug 2023 23:07:55 +0200 Jernej Škrabec <jernej.skrabec@gmail.com> wrote: Hi Jernej, > Dne ponedeljek, 31. julij 2023 ob 03:17:22 CEST je Andre Przywara napisal(a): > > Hi, > > > > Orange Pi recently released the Orange Pi Zero 3 board, which is some > > updated version of their former Zero 2 development board. Some component > > changes (Motorcomm PHY instead of Realtek, different PMIC), some board > > layout changes, and it ships with up to 4GB of DRAM now. The SoC is now > > labelled H618 instead of H616, which apparently is the same, just with > > more L2 cache. > > > > Split the existing OPi Zero2 DT, to allow sharing most DT nodes, then > > add the binding documentation and DT for the new board. > > > > Linux v6.5-rc boots out of the box (the PMIC driver just made it in), > > and most things work: UART, PSCI, GPIO, SPI flash, SD card, USB. > > Ethernet is almost working, I get an IP address via DHCP, but no further > > packets come through. Might be either a problem with the new Motorcomm > > PHY driver, or some missing delay settings, I have to investigate, any > > help or advice welcome. > > When I worked with Motorcomm PHYs, I had to add > > motorcomm,clk-out-frequency-hz = <125000000>; Ah, good point. Looking at the Linux driver code, that seems almost mandatory, otherwise the PHY clock is not activated(?). So that helped, I managed to SSH into my laptop, but it still hangs then. Just for the sake of completeness, I also tried the other properties that other boards use: As expected, motorcomm,keep-pll-enabled didn't help, as the clock line just goes to the MAC pin, and is not used otherwise. And also motorcomm,auto-sleep-disabled didn't improve stability. At least not with the current settings, maybe it's needed later on. > and usual reset gpio related properties. Have you tried that? In any case, > it's not 100% reliable, but I don't know why. The reset pin is hardwired via a simple RC circuit, so there is no GPIO, and thus the delay parameters don't do anything, I suppose. But as it's better now with the clk-out property, so I will definitely add that. Reports from others (Piotr) seem to suggest that Ethernet is working for them, so I need to compare notes. Thanks, Andre > > Best regards, > Jernej > > > Also let me know if the DT split is a good idea or not, happy to roll > > that back if requested. > > > > Cheers, > > Andre > > > > Andre Przywara (3): > > arm64: dts: allwinner: h616: Split Orange Pi Zero 2 DT > > dt-bindings: arm: sunxi: document Orange Pi Zero 3 board name > > arm64: dts: allwinner: h616: Add OrangePi Zero 3 board support > > > > .../devicetree/bindings/arm/sunxi.yaml | 5 + > > arch/arm64/boot/dts/allwinner/Makefile | 1 + > > .../allwinner/sun50i-h616-orangepi-zero2.dts | 119 +--------------- > > .../allwinner/sun50i-h616-orangepi-zerox.dtsi | 131 ++++++++++++++++++ > > .../allwinner/sun50i-h618-orangepi-zero3.dts | 86 ++++++++++++ > > 5 files changed, 224 insertions(+), 118 deletions(-) > > create mode 100644 > > arch/arm64/boot/dts/allwinner/sun50i-h616-orangepi-zerox.dtsi create mode > > 100644 arch/arm64/boot/dts/allwinner/sun50i-h618-orangepi-zero3.dts > > > > >
© 2016 - 2026 Red Hat, Inc.