[PATCH v2 0/7] arm64: sunxi: h616: Add USB support
Jernej Škrabec
jernej.skrabec at gmail.com
Mon Nov 7 11:09:22 PST 2022
Dne ponedeljek, 31. oktober 2022 ob 12:13:51 CET je Andre Przywara napisal(a):
> This is a fixed and rebased update of the previous version, with only
> the DT binding and one DT seeing changes, triggered by Krzysztof's
> comments. For a changelog see below.
> Thanks to Karl for testing this on the OrangePi Zero 2!
>
> ------------------------
> The USB IP used in the Allwinner H616 SoC is very similar to the one
> used in the H3 chip: it contains four USB 2.0 host controllers and four
> PHYs, where the first PHY is shared with a separate USB-OTG controller.
>
> But out of the four ports, only port 2 works out of the box, the other
> ports require some resources and registers of port 2 to be enabled as
> well.
>
> Implement the required workaround in the Allwinner USB PHY driver, and
> key this off the respective compatible string. This core code is
> contained in patch 3/7. The first two patches add the respective DT
> binding documentation, whereas patch 4/7 encodes all the configuration
> options for the H616 USB PHY into the driver.
> The last three patches add the respective devicetree nodes, to the H616
> .dtsi, but also to the DTs of the two supported boards.
>
> This allows USB to be used on any H616 based machine. This was tested on
> the X96 Mate box.
>
> The patches in this series were originally contained in the initial H616
> support series, but where dropped there to speed up mainlining of the
> basic support.
>
> It is now based on v6.1-rc3 and is also available here:
> https://github.com/apritzel/linux/commits/h616-usb-v2
>
> Please have a look and test on your hardware, especically on all ports
> exposed on header pins of the OrangePi Zero2 board.
>
> Cheers,
> Andre
>
> Changelog v1 .. v2:
> - Add Krzysztof's ACK
> - wrap If: clause in allOf: (patch 2/7)
> - limit old (H3) PHYs to 4 clocks (else clause, patch 2/7)
> - change subsystem to phy: in subject (patch 2/7)
> - use "regulator-" prefix for DT node name (patch 6/7)
> - drop unneeded status property in regulator node (patch 6/7)
>
> Andre Przywara (7):
> dt-bindings: usb: Add H616 compatible string
> dt-bindings: phy: Add special clock for Allwinner H616 PHY
> phy: sun4i-usb: Introduce port2 SIDDQ quirk
> phy: sun4i-usb: Add support for the H616 USB PHY
> arm64: dts: allwinner: h616: Add USB nodes
> arm64: dts: allwinner: h616: OrangePi Zero 2: Add USB nodes
> arm64: dts: allwinner: h616: X96 Mate: Add USB nodes
Applied patches 1, 5, 6, 7. Thanks!
Best regards,
Jernej
More information about the linux-phy
mailing list