phy: phy-imx8mq-usb: Add support for i.MX95 USB3 PHY
authorTim Harvey <tharvey@gateworks.com>
Wed, 9 Jul 2025 15:24:08 +0000 (08:24 -0700)
committerMarek Vasut <marek.vasut+usb@mailbox.org>
Sat, 23 Aug 2025 16:17:48 +0000 (18:17 +0200)
commitedbcf8e3590fb640b4709841605b0a58ef8aa7f1
tree37e311289e3a0c45c171691119374dbaad62ecd8
parent94e690c44a03959c39f0f5a44a9b89c851af3b60
phy: phy-imx8mq-usb: Add support for i.MX95 USB3 PHY

Add initial support for i.MX95 USB.30 PHY, which is similar to
the i.MX8MQ and i.MX8MP USB PHY.

The i.MX95 USB3 PHY has a Type-C Assist block (TCA) consisting of two
functional blocks (XBar assist and VBus assist) and is documented
in the i.MX95 RM Chapter 163.3.8 Type-C assist (TCA) block.

Instead of relying on an external MUX for Type-C plug orientation the
XBar can handle the flip internally.

Add initial support for i.MX95 by:
 - allowing the driver to be enabled i.MX95
 - resetting the XBar
 - configuring the TCA in System Configuration mode (which was determined
   to be necessary to enable the PHY in device-mode)

Follow-on support will need to be added to steer the XBar based on
either board design (if only one pair is brought out) or if used with a
Type-C controller.

Signed-off-by: Tim Harvey <tharvey@gateworks.com>
Tested-by: Alice Guo <alice.guo@nxp.com>
drivers/phy/Kconfig
drivers/phy/phy-imx8mq-usb.c