Re: [PATCH 0/3] sunxi: Orange Pi Zero 3 DT support

From: Andre Przywara
Date: Fri Aug 04 2023 - 07:48:18 EST


On Thu, 03 Aug 2023 23:07:55 +0200
Jernej Škrabec <jernej.skrabec@xxxxxxxxx> 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
>
>
>
>
>