RE: [PATCH v2 0/3] i.MX8MP: more USB3 glue layer feature support

Jun Li
2021-12-22T03:19:07Z

> -----Original Message-----
> From: Alexander Stein <alexander.stein@ew.tq-group.com>
> Sent: Friday, December 17, 2021 12:06 AM
> To: Kishon Vijay Abraham I <kishon@ti.com>; Vinod Koul <vkoul@kernel.org>;
> Rob Herring <robh+dt@kernel.org>; Shawn Guo <shawnguo@kernel.org>; Sascha
> Hauer <s.hauer@pengutronix.de>; Fabio Estevam <festevam@gmail.com>
> Cc: Alexander Stein <alexander.stein@ew.tq-group.com>; dl-linux-imx
> <linux-imx@nxp.com>; linux-phy@lists.infradead.org;
> devicetree@vger.kernel.org; linux-arm-kernel@lists.infradead.org
> Subject: [PATCH v2 0/3] i.MX8MP: more USB3 glue layer feature support
>
> This patchset aims to support flags for e.g. over-current active low or port
> permanantly attached which are provided in the USB3 glue layer.
>
> There is already a glue layer driver dwc3-imx8mp, but unfortunately this
> driver does not use the glue area at all, it only handles wakeup-support
> which is done in the HSIO BLK_CTRL area (0x32f10100), accordingly the driver
> only uses the hsio clock.
>
> The driver which actually uses the USB3 glue area is phy-fsl-imx8mq-usb.
> As the name indicates PHY is configured in the corresponding registers, which
> are part of the USB3 glue layer.
>
> This make is it unclear for me which driver should handle the required features
> above.
> dwc3-imx8mp, the glue layer driver, does not touch the glue area at all,
> but the HSIO BLK_CTRL area.
> phy-fsl-imx8mq-usb only touches the PHY registers in the glue layer.
> Neither does map the USB3 control register from the glue layer.
>
> Thanks for any feedback and best regards, Alexander

Which driver handle what function is decided by the driver *function*,
not where the actual HW logic is located, iMX8MP do have a "glue" layer
in SoC HW, some part is for phy config, and some part is for controller,
so we need put the part of phy config into the phy driver, the changes
you are adding is for controller so should be put in dwc3-imx8mp.c from
my point view.

Li Jun

>
> Alexander Stein (3):
> dt-bindings: phy: imx8mq-usb-phy: Add imx8mp specific flags
> phy: fsl-imx8mq-usb: Add support for setting fsl specific flags
> arm64: dts: imx8mp: Add memory for USB3 glue layer to usb3_phy nodes
>
> .../bindings/phy/fsl,imx8mq-usb-phy.yaml | 52 +++++++++++++++-
> arch/arm64/boot/dts/freescale/imx8mp.dtsi | 6 +-
> drivers/phy/freescale/phy-fsl-imx8mq-usb.c | 61 +++++++++++++++++++
> 3 files changed, 116 insertions(+), 3 deletions(-)
>
> --
> 2.25.1