This series makes significant improvements to i.MX7D USB support, including:
- Power domain support
- CONFIG_PHY support (NOP_PHY, used to hook up the power domain)
- power-active-high DT property
- A HSIC-specific workaround for an i.MX7D hardware bug
PHY and power domain support allows the HSIC interface as found on the TQMa7 to
work. Without this series, running a command like `usb start` would attempt to
put the USB controller into HSIC mode without enabling the prerequisite power
domains first, resulting in a hang of the system.
For tqma7_mba7_mmc_defconfig, u-boot-with-spl.imx grows from 729K to 736K.
Configurations that don't enable the newly supported regulator and power domain
drivers should be largely unchanged.
Nora Schiffer (16):
phy: introduce generic_phy_get_by_phandle_args()
regulator: anatop: fix probe without vin-supply
regulator: anatop: add support for anatop-enable-bit
power: domain: rename imx8m-power-domain to imx-gpcv2-power-domain
power: domain: imx-gpcv2: do not unconditionally select CONFIG_CLK
power: domain: imx-gpcv2: set CPU domain mapping on probe
power: domain: imx-gpcv2: add support for power-supply regulator
power: domain: imx-gpcv2: add support for i.MX7D
usb: ehci-mx6: set up i.MX7D misc registers regardless of CONFIG_PHY
setting
usb: ehci-mx6: unconditionally run usb_oc_config()
usb: ehci-mx6: add support for power-active-high property
usb: ehci-mx6: handle fsl,usbphy with CONFIG_PHY
usb: ehci: allow overriding port enable operation
usb: ehci-mx6: force HSIC ports to HS mode during port enable
configs: tqma6ul: drop obsolete CONFIG_MXC_USB_OTG_HACTIVE symbol
configs: tqma7: enable PHY and power domain support for USB HSIC
configs/imx8m_data_modul.config | 2 +-
configs/imx8mm-cl-iot-gate-optee_defconfig | 2 +-
configs/imx8mm-cl-iot-gate_defconfig | 2 +-
configs/imx8mm-mx8menlo_defconfig | 2 +-
configs/imx8mm-phygate-tauri-l_defconfig | 2 +-
configs/imx8mm_evk_defconfig | 2 +-
configs/imx8mm_phg_defconfig | 2 +-
configs/imx8mm_venice_defconfig | 2 +-
configs/imx8mn_venice_defconfig | 2 +-
configs/imx8mp-libra-fpsc_defconfig | 2 +-
configs/imx8mp_dhsom.config | 2 +-
configs/imx8mp_evk_defconfig | 2 +-
configs/imx8mp_venice_defconfig | 2 +-
configs/imx8mq_evk_defconfig | 2 +-
configs/imx8mq_phanbell_defconfig | 2 +-
configs/imx8mq_reform2_defconfig | 2 +-
configs/kontron-osm-s-mx8mp.config | 2 +-
configs/kontron-sl-mx8mm_defconfig | 2 +-
configs/kontron_pitx_imx8m_defconfig | 2 +-
configs/librem5-devkit_defconfig | 2 +-
configs/librem5_defconfig | 2 +-
configs/phycore-imx8mm_defconfig | 2 +-
configs/phycore-imx8mp_defconfig | 2 +-
configs/pico-imx8mq_defconfig | 2 +-
configs/toradex-smarc-imx8mp_defconfig | 2 +-
configs/tqma6ul_common.config | 1 -
configs/tqma7_common.config | 6 +-
configs/verdin-imx8mm_defconfig | 2 +-
configs/verdin-imx8mp_defconfig | 2 +-
drivers/phy/phy-uclass.c | 35 ++--
drivers/power/domain/Kconfig | 14 +-
drivers/power/domain/Makefile | 2 +-
...ower-domain.c => imx-gpcv2-power-domain.c} | 151 ++++++++++++++---
drivers/power/regulator/anatop_regulator.c | 42 ++++-
drivers/usb/host/ehci-hcd.c | 15 +-
drivers/usb/host/ehci-mx6.c | 159 ++++++++++++------
drivers/usb/host/ehci.h | 2 +
include/generic-phy.h | 29 ++++
include/usb/ehci-ci.h | 1 +
39 files changed, 377 insertions(+), 134 deletions(-)
rename drivers/power/domain/{imx8m-power-domain.c => imx-gpcv2-power-domain.c}
(76%)
--
2.55.0