[linux-sunxi] Re: [PATCH v7 01/19] dt-bindings: mfd: axp20x: Add AXP305 compatible (plus optional IRQ)

2021-06-15 Thread Rob Herring
On Tue, 15 Jun 2021 12:06:18 +0100, Andre Przywara wrote: > The AXP305 PMIC used on many boards with the H616 SoC seems to be fully > compatible to the AXP805 PMIC, so add the proper chain of compatible > strings. > > Also at least on one board (Orangepi Zero2) there is no interrupt line >

[linux-sunxi] Re: [PATCH v7 03/19] dt-bindings: rtc: sun6i: Add H616 compatible string

2021-06-15 Thread Rob Herring
On Tue, Jun 15, 2021 at 12:06:20PM +0100, Andre Przywara wrote: > Add the obvious compatible name to the existing RTC binding. > The actual RTC part of the device uses a different day/month/year > storage scheme, so it's not compatible with the previous devices. > Also the clock part is quite

[linux-sunxi] Re: [PATCH v6 03/17] dt-bindings: rtc: sun6i: Add H616 compatible string

2021-06-15 Thread Andre Przywara
On Mon, 7 Jun 2021 23:23:04 -0500 Samuel Holland wrote: Hi Samuel, > On 6/7/21 7:59 AM, Andre Przywara wrote: > > On Thu, 20 May 2021 21:37:34 -0500 > > Samuel Holland wrote: > > > > Hi, > > > >> On 5/19/21 5:41 AM, Andre Przywara wrote: > >>> Add the obvious compatible name to the

[linux-sunxi] [PATCH v7 16/19] arm64: dts: allwinner: Add Allwinner H616 .dtsi file

2021-06-15 Thread Andre Przywara
This (relatively) new SoC is similar to the H6, but drops the (broken) PCIe support and the USB 3.0 controller. It also gets the management controller removed, which in turn removes *some*, but not all of the devices formerly dedicated to the ARISC (CPUS). And while there is still the extra sunxi

[linux-sunxi] [PATCH v7 17/19] dt-bindings: arm: sunxi: Add two H616 board compatible strings

2021-06-15 Thread Andre Przywara
Signed-off-by: Andre Przywara --- Documentation/devicetree/bindings/arm/sunxi.yaml | 10 ++ 1 file changed, 10 insertions(+) diff --git a/Documentation/devicetree/bindings/arm/sunxi.yaml b/Documentation/devicetree/bindings/arm/sunxi.yaml index ac750025a2eb..0b20d2260d0b 100644 ---

[linux-sunxi] [PATCH v7 18/19] arm64: dts: allwinner: h616: Add OrangePi Zero 2 board support

2021-06-15 Thread Andre Przywara
The OrangePi Zero 2 is a development board with the new H616 SoC. It comes with the following features: - Four ARM Cortex-A53 cores, Mali-G31 MP2 GPU - 512MiB/1GiB DDR3 DRAM - AXP305 PMIC - Raspberry-Pi-1 compatible GPIO header - extra 13 pin expansion header, exposing pins for 2x USB

[linux-sunxi] [PATCH v7 19/19] arm64: dts: allwinner: h616: Add X96 Mate TV box support

2021-06-15 Thread Andre Przywara
The X96 Mate is an Allwinner H616 based TV box, featuring: - Four ARM Cortex-A53 cores, Mali-G31 MP2 GPU - 2GiB/4GiB RAM (fully usable!) - 16/32/64GiB eMMC - 100Mbps Ethernet (via embedded AC200 EPHY, not yet supported) - Unsupported Allwinner WiFi chip - 2 x USB 2.0 host ports -

[linux-sunxi] [PATCH v7 13/19] phy: sun4i-usb: Allow reset line to be shared

2021-06-15 Thread Andre Przywara
The USB HCIs (and PHYs?) in Allwinner's newer generation SoCs (H616) rely on the reset line of USB PHY 2 to be de-asserted, even when only one of the other PHYs is actually in use. To make those ports work, we include this reset line in the HCIs' resets property, which requires this line to be

[linux-sunxi] [PATCH v7 14/19] phy: sun4i-usb: Introduce port2 SIDDQ quirk

2021-06-15 Thread Andre Przywara
At least the Allwinner H616 SoC requires a weird quirk to make most USB PHYs work: Only port2 works out of the box, but all other ports need some help from this port2 to work correctly: The CLK_BUS_PHY2 and RST_USB_PHY2 clock and reset need to be enabled, and the SIDDQ bit in the PMU PHY control

[linux-sunxi] [PATCH v7 15/19] phy: sun4i-usb: Add support for the H616 USB PHY

2021-06-15 Thread Andre Przywara
The USB PHY used in the Allwinner H616 SoC inherits some traits from its various predecessors: it has four full PHYs like the H3, needs some extra bits to be set like the H6, and puts SIDDQ on a different bit like the A100. Plus it needs this weird PHY2 quirk. Name all those properties in a new

[linux-sunxi] [PATCH v7 08/19] dt-bindings: net: sun8i-emac: Add H616 compatible string

2021-06-15 Thread Andre Przywara
Add the obvious compatible name to the existing EMAC binding, and pair it with the existing A64 fallback compatible string, as the devices are compatible. On the way use enums to group the compatible devices together. Signed-off-by: Andre Przywara Acked-by: Rob Herring ---

[linux-sunxi] [PATCH v7 09/19] net: stmmac: dwmac-sun8i: Prepare for second EMAC clock register

2021-06-15 Thread Andre Przywara
The Allwinner H616 SoC has two EMAC controllers, with the second one being tied to the internal PHY, but also using a separate EMAC clock register. To tell the driver about which clock register to use, we add a parameter to our syscon phandle. The driver will use this value as an index into the

[linux-sunxi] [PATCH v7 10/19] dt-bindings: usb: Add H616 compatible string

2021-06-15 Thread Andre Przywara
The H616 has four PHYs as the H3, along with their respective clock gates and resets, so the property description is identical. However the PHYs itself need some special bits, so we need a new compatible string for it. Signed-off-by: Andre Przywara Acked-by: Rob Herring ---

[linux-sunxi] [PATCH v7 00/19] arm64: sunxi: Initial Allwinner H616 SoC support

2021-06-15 Thread Andre Przywara
Hi, some update on the H616 support series: Compared to v6 the USB quirk patch (14/19) got slightly reworked: we now take the PHY2 clocks and resets directly from the PHY node, and enable them also for the other PHYs. That saves us from referencing them from the HCIs and makes the DT look much

[linux-sunxi] [PATCH v7 01/19] dt-bindings: mfd: axp20x: Add AXP305 compatible (plus optional IRQ)

2021-06-15 Thread Andre Przywara
The AXP305 PMIC used on many boards with the H616 SoC seems to be fully compatible to the AXP805 PMIC, so add the proper chain of compatible strings. Also at least on one board (Orangepi Zero2) there is no interrupt line connected to the CPU, so make the "interrupts" property optional.

[linux-sunxi] [PATCH v7 02/19] mfd: axp20x: Allow AXP 806 chips without interrupt lines

2021-06-15 Thread Andre Przywara
Currently the AXP chip requires to have its IRQ line connected to some interrupt controller, and will fail probing when this is not the case. On a new Allwinner SoC (H616) there is no NMI pin anymore, and at least one board does not connect the AXP's IRQ pin to anything else, so the interrupt

[linux-sunxi] [PATCH v7 05/19] rtc: sun6i: Add support for broken-down alarm registers

2021-06-15 Thread Andre Przywara
Newer versions of the Allwinner RTC, for instance as found in the H616 SoC, not only store the current day as a linear number, but also change the way the alarm is handled: There are now two registers, that explicitly store the wakeup time, in the same format as the current time. Add support for

[linux-sunxi] [PATCH v7 04/19] rtc: sun6i: Add support for linear day storage

2021-06-15 Thread Andre Przywara
Newer versions of the Allwinner RTC, as for instance found in the H616 SoC, no longer store a broken-down day/month/year representation in the RTC_DAY_REG, but just a linear day number. The user manual does not give any indication about the expected epoch time of this day count, but the BSP kernel

[linux-sunxi] [PATCH v7 06/19] rtc: sun6i: Add support for RTCs without external LOSCs

2021-06-15 Thread Andre Przywara
Some newer Allwinner RTCs (for instance the one in the H616 SoC) lack a pin for an external 32768 Hz oscillator. As a consequence, this LOSC can't be selected as the RTC clock source, and we must rely on the internal RC oscillator. To allow additions of clocks to the RTC node, add a feature bit to

[linux-sunxi] [PATCH v7 07/19] rtc: sun6i: Add Allwinner H616 support

2021-06-15 Thread Andre Przywara
The H616 RTC changes its day storage to the newly introduced linear day scheme, so pair the new compatible string with this feature flag. The clock part is missing an external 32768 Hz oscillator input pin, for future expansion we must thus ignore any provided clock for now. Signed-off-by: Andre

[linux-sunxi] [PATCH v7 11/19] dt-bindings: usb: sunxi-musb: Add H616 compatible string

2021-06-15 Thread Andre Przywara
The H616 MUSB peripheral is compatible to the H3 one (8 endpoints). Signed-off-by: Andre Przywara Acked-by: Maxime Ripard Acked-by: Rob Herring --- .../devicetree/bindings/usb/allwinner,sun4i-a10-musb.yaml | 3 +++ 1 file changed, 3 insertions(+) diff --git

[linux-sunxi] [PATCH v7 12/19] phy: sun4i-usb: Rework HCI PHY (aka. "pmu_unk1") handling

2021-06-15 Thread Andre Przywara
As Icenowy pointed out, newer manuals (starting with H6) actually document the register block at offset 0x800 as "HCI controller and PHY interface", also describe the bits in our "PMU_UNK1" register. Let's put proper names to those "unknown" variables and symbols. While we are at it, generalise

[linux-sunxi] [PATCH v7 03/19] dt-bindings: rtc: sun6i: Add H616 compatible string

2021-06-15 Thread Andre Przywara
Add the obvious compatible name to the existing RTC binding. The actual RTC part of the device uses a different day/month/year storage scheme, so it's not compatible with the previous devices. Also the clock part is quite different, as there is no external 32K LOSC oscillator input.

[linux-sunxi] Re: [PATCH v7 13/19] phy: sun4i-usb: Allow reset line to be shared

2021-06-15 Thread Philipp Zabel
On Tue, 2021-06-15 at 12:06 +0100, Andre Przywara wrote: > The USB HCIs (and PHYs?) in Allwinner's newer generation SoCs (H616) > rely on the reset line of USB PHY 2 to be de-asserted, even when only > one of the other PHYs is actually in use. > > To make those ports work, we include this reset

[linux-sunxi] Build u-boot-sunxi-with-spl.bin fails

2021-06-15 Thread Nadav Barkol
Hi, I am trying to build *u-boot-sunxi-with-spl.bin* for A50 processor of Allwinner (board name: sun8iw15p1). I am using a makefile inside u-boot-2014.07 folder. After a few tries I am getting the following error: