
This series rework of previous version[1] where it removes legacy usb phy handling and added phy driver on generic-phy framework.
Current implementation phy driver is unable to get pinctrl, clock and reset details from DT since the dm code on these will add it future.
For ARM64 Allwinner platforms it is increasing size nearly ~64K due to enabling musb, phy, and dts sync. Currently build is failing due to BOARD_SIZE_LIMIT
patch 1, simplify sunxi ccm reg base code on host and musb-new patch 2-3, simplify musb-new/sunxi.c code patch 4, add fifo config on musb-new/sunxi.c patch 5-7, fixes clock gating for H3/H5/A64 patch 8, musb support for H3/H5/A64 patch 9, add Allwinner A64 USB PHY driver patch 10, add id_detect and vbus_detect code patch 11-17, add phy support for H3/H5/V3S/A83T/A10/A13/A20/A31/A33/A23 platforms patch 18, binding code patch 19, use generic-phy for board_usb_cable_connected patch 20, phy squelch-detect support patch 21, switch to generic-phy code in host and musb-new patch 22, drop legacy arch/arm/mach-sunxi/usb_phy.c and related code patch 23-30, for adding usb_otg, usbphy dts and musb gadget enablement for H3/H5/A64.
Changes for v4: - Rework of previous series - Add Allwinner sun4i USB PHY driver - Drop legacy arch/arm/mach-sunxi/usb_phy.c and related code
All changes available at u-boot-sunxi/usb branch.
[1] https://patchwork.ozlabs.org/cover/866847/
Chen-Yu Tsai (1): sunxi: clock: Fix OHCI clock gating for H3/H5
Jagan Teki (32): usb: sunxi: Simplify ccm reg base code musb: sunxi: Add proper macros instead of numericals musb: sunxi: Use simple way to fill musb_hdrc pdata musb: sunxi: Add fifo config sunxi: clock: Fix clock gating for H3/H5/A64 musb: sunxi: Add OTG device clkgate and reset for H3/H5 musb: sunxi: Add support for H3/H5A64 phy: Add Allwinner A64 USB PHY driver phy: sun4i-usb: Add id_detect and vbus_detect ops phy: sun4i-usb: Add H3/H5 PHY config phy: sun4i-usb: Add V3S PHY config phy: sun4i-usb: Add A83T USB PHY config phy: sun4i-usb: Add A10/A13/A20 PHY config phy: sun4i-usb: Add A31 PHY config phy: sun4i-usb: Add A33 USB PHY config phy: sun4i-usb: Add A23 USB PHY config device-tree-bindings: phy: Sync sun4i-usb-phy bindings board: sunxi: Use generic-phy for board_usb_cable_connected phy: sun4i-usb: Add a sunxi specific function for setting squelch-detect usb: sunxi: Switch to use generic-phy sunxi: Drop legacy usb_phy.c arm64: allwinner: a64: bananapi-m64: Sync usb_otg node from Linux configs: bananapi-m64: Enable USB OTG peripheral mode ARM: dts: sun8i: a83t: Sync usbphy node from Linux arm64: allwinner: a64: bananapi-m64: Sync usb host nodes from Linux ARM: dts: sun8i-h3: bananapi-m2-plus: Sync usb otg nodes from Linux configs: bananapi-m2-plus: Enable USB OTG peripheral mode arm64: allwinner: h5: orangepi-pc2: Order nodes in alphabetic arm64: allwinner: h5: orangepi-pc2: Sync usb otg nodes from Linux configs: orangepi-pc2: Enable USB OTG peripheral mode arm64: allwinner: h5: orangepi-prime: Sync usb otg nodes from Linux configs: orangepi-prime: Enable USB OTG peripheral mode
Jun Nie (1): sunxi: h3: Sync OTG and HCI nodes from Linux DT
arch/arm/dts/sun50i-a64-bananapi-m64.dts | 26 ++ arch/arm/dts/sun50i-h5-orangepi-pc2.dts | 54 ++- arch/arm/dts/sun50i-h5-orangepi-prime.dts | 13 + arch/arm/dts/sun8i-a83t.dtsi | 20 + arch/arm/dts/sun8i-h3-bananapi-m2-plus.dts | 13 + arch/arm/dts/sun8i-h3.dtsi | 32 ++ arch/arm/include/asm/arch-sunxi/clock_sun6i.h | 24 +- arch/arm/include/asm/arch-sunxi/usb_phy.h | 21 - arch/arm/mach-sunxi/Kconfig | 9 + arch/arm/mach-sunxi/Makefile | 3 - arch/arm/mach-sunxi/usb_phy.c | 407 ----------------- board/sunxi/board.c | 40 +- c | 0 configs/Sinovoip_BPI_M2_Plus_defconfig | 1 + configs/bananapi_m64_defconfig | 1 + configs/orangepi_pc2_defconfig | 1 + configs/orangepi_prime_defconfig | 1 + doc/device-tree-bindings/phy/sun4i-usb-phy.txt | 65 +++ drivers/Kconfig | 2 + drivers/Makefile | 1 + drivers/phy/allwinner/Kconfig | 13 + drivers/phy/allwinner/Makefile | 6 + drivers/phy/allwinner/phy-sun4i-usb.c | 575 +++++++++++++++++++++++++ drivers/usb/host/ehci-sunxi.c | 67 ++- drivers/usb/host/ohci-sunxi.c | 73 +++- drivers/usb/musb-new/musb_core.h | 4 + drivers/usb/musb-new/musb_regs.h | 3 +- drivers/usb/musb-new/musb_uboot.c | 22 +- drivers/usb/musb-new/sunxi.c | 184 ++++++-- include/phy-sun4i-usb.h | 34 ++ 30 files changed, 1158 insertions(+), 557 deletions(-) delete mode 100644 arch/arm/include/asm/arch-sunxi/usb_phy.h delete mode 100644 arch/arm/mach-sunxi/usb_phy.c create mode 100644 c create mode 100644 doc/device-tree-bindings/phy/sun4i-usb-phy.txt create mode 100644 drivers/phy/allwinner/Kconfig create mode 100644 drivers/phy/allwinner/Makefile create mode 100644 drivers/phy/allwinner/phy-sun4i-usb.c create mode 100644 include/phy-sun4i-usb.h