Re: [PATCH] usb: dwc3: exynos: remove usb_phy_generic support

From: Felipe Balbi
Date: Wed Aug 27 2014 - 15:28:46 EST


Hi,

On Wed, Aug 27, 2014 at 11:42:25PM +0530, Vivek Gautam wrote:
> On Wed, Aug 27, 2014 at 1:22 PM, Bartlomiej Zolnierkiewicz
> <b.zolnierkie@xxxxxxxxxxx> wrote:
> > dwc3 driver is using the new Exynos5 SoC series USB DRD PHY driver
> > (PHY_EXYNOS5_USBDRD which selects GENERIC_PHY) as can be seen by
> > looking at the following commits:
> >
> > 7a4cf0fde054 ("ARM: dts: Update DWC3 usb controller to use new
> > phy driver for exynos5250")
> >
> > f070267b5fc1 ("ARM: dts: Enable support for DWC3 controller for
> > exynos5420")
> >
> > Thus remove unused usb_phy_generic support from dwc3 Exynos glue
> > layer.
> >
> > [ The code that is being removed is harmful in the context of
> > multi_v7_defconfig and enabling "EHCI support for Samsung
> > S5P/EXYNOS SoC Series" (USB_EHCI_EXYNOS) + "OHCI support for
> > Samsung S5P/EXYNOS SoC Series" (USB_OHCI_EXYNOS) because "EHCI
> > support for OMAP3 and later chips" (USB_EHCI_HCD_OMAP) selects
> > "NOP USB Transceiver Driver" (NOP_USB_XCEIV). NOP USB driver
> > attaches itself to usb_phy_generic platform devices created by
> > dwc3 Exynos glue layer and later causes Exynos EHCI driver to
> > fail probe and Exynos OHCI driver to hang on probe (as observed
> > on Exynos5250 Arndale board). ]
>
> The issue with EHCI and OHCI on exynos platforms is that until now
> they also request
> usb-phy and only later if they don't find one, they go ahead and get a
> 'phy' generic.
>
> Fortunately we missed this issue with exynos_defconfig, and as you rightly
> mentioned with multi_v7_defconfig, the NOP_USB_XCEIV gets enabled and
> EHCI and OHCI exynos get no-op usb-phy, which actually blocks EHCI/OHCI from
> initializing the real PHYs.

right, when I added PHY support to dwc3 I expected people to remote NOP
transceivers from their glue layers after they had proper PHY drivers
available.

> This issue is resolved with patches:
> [PATCH v2 1/2] usb: host: ehci-exynos: Remove unnecessary usb-phy support
> [PATCH v2 2/2] usb: host: ohci-exynos: Remove unnecessary usb-phy support
> wherein we are completely removing the usb-phy support from ehci/ohci-exynos.
> So with these patches we should not see the issue mentioned by you.
>
> Now for the DWC3 part, the usb-phy part was added to use register two
> separate no-op-xceivers of USB2_PHY type and USB3_PHY type,
> so that platforms with no separate PHY can still be able to use dwc3.

correct.

--
balbi

Attachment: signature.asc
Description: Digital signature