MLK-23656 imx8: Power off connectivty SS when boot from usb
authorYe Li <ye.li@nxp.com>
Mon, 23 Mar 2020 06:47:38 +0000 (23:47 -0700)
committerYe Li <ye.li@nxp.com>
Thu, 29 Apr 2021 10:25:56 +0000 (03:25 -0700)
commit7305eab358da446155024abfa01d5fdb21690d86
treecdf2db4ead80d7605c4b9026b6ec76903ece7658
parentf0e9a9bf49229672659e0b36cc16439bd3af89db
MLK-23656 imx8: Power off connectivty SS when boot from usb

When boot from usb, scfw won't re-initialize the connectivity subsystem.
This special behavior is for uuu virtual console feature.
However, it causes entire connectivity SS using settings from ROM. We found
the bus clocks are from AVPLL not DPLL and lower than ADD required. It causes
OTG performance drop about 20% during fastboot because more NYET handshake
added into each transfer.

To workaround the issue, we need to power off all usb resources to let connectivity
SS power down at early uboot phase. Then power on any resource in conn SS will
re-initialize the subsystem.

Regard to auto USB port check, we only has this workaround in u-boot not in SPL.
SPL uses SDP to download other images, the sizes are very small and not impacted.

Signed-off-by: Ye Li <ye.li@nxp.com>
Tested-by: Peter Chen <peter.chen@nxp.com>
Acked-by: Peng Fan <peng.fan@nxp.com>
(cherry picked from commit 625b061107928377f51859ee9c0558dc7d56c137)
(cherry picked from commit b5d057e8fdf7ca91fe41204132cd3bff4f57d57a)
arch/arm/mach-imx/imx8/cpu.c