Hi Arnd,
On Fri, Jun 11, 2021 at 5:30 AM Arnd Bergmann arnd@arndb.de wrote:
Adding Fabio and Guennadi to Cc.
I can see that the missing symbols were in a driver that got removed in commit a390bef7db1f ("usb: gadget: fsl_mxc_udc: Remove the driver").
If CONFIG_ARCH_MXC is disabled, these are stubbed out in the header file. These were added a long time ago by Guennadi Liakhovetski 54e4026b64a9 ("USB: gadget: Add i.MX3x support to the fsl_usb2_udc driver"). I also see that this patch added a few #ifdef CONFIG_ARCH_MXC checks to the driver that still remain today. This is clearly broken as it must be possible to use the same driver module on both SOC_LS1021A and i.MX using a runtime check.
I also don't see any i.MX variant actually using this driver, but instead see the dts files declaring fsl,imx27-usb devices, which bind to the drivers/usb/chipidea/ci_hdrc_imx.c driver. Is this one of those cases where we have two separate drivers for the same hardware, or is this for a different device?
Exactly. The USB IP on several i.MX devices comes from ChipIdea.
Prior to using devicetree, we had the fsl_mxc_udc driver to handle the gadget side.
Since i.MX has been converted to a DT-only platform, we no longer need fsl_mxc_udc, as drivers/usb/chipidea is used nowadays.