Hi Chunfeng, On 21/03/18 08:12, Chunfeng Yun wrote: > The phys has already been initialized when add primary hcd, > including usb2 phys and usb3 phys also if exist, so needn't > re-parse "phys" property again. > > Signed-off-by: Chunfeng Yun <chunfeng.yun@xxxxxxxxxxxx> > --- > drivers/usb/host/xhci-mtk.c | 1 + > drivers/usb/host/xhci-plat.c | 1 + > 2 files changed, 2 insertions(+) > > diff --git a/drivers/usb/host/xhci-mtk.c b/drivers/usb/host/xhci-mtk.c > index 7334da9..6bb23fb 100644 > --- a/drivers/usb/host/xhci-mtk.c > +++ b/drivers/usb/host/xhci-mtk.c > @@ -554,6 +554,7 @@ static int xhci_mtk_probe(struct platform_device *pdev) > if (HCC_MAX_PSA(xhci->hcc_params) >= 4) > xhci->shared_hcd->can_do_streams = 1; > > + xhci->shared_hcd->skip_phy_initialization = 1; > ret = usb_add_hcd(xhci->shared_hcd, irq, IRQF_SHARED); > if (ret) > goto dealloc_usb2_hcd; > diff --git a/drivers/usb/host/xhci-plat.c b/drivers/usb/host/xhci-plat.c > index 6700e5e..65a4294 100644 > --- a/drivers/usb/host/xhci-plat.c > +++ b/drivers/usb/host/xhci-plat.c > @@ -294,6 +294,7 @@ static int xhci_plat_probe(struct platform_device *pdev) > if (HCC_MAX_PSA(xhci->hcc_params) >= 4) > xhci->shared_hcd->can_do_streams = 1; > > + xhci->shared_hcd->skip_phy_initialization = 1; I think this is unnecessary. There aren't separate PHYs for the primary and shared HCDs right? Also how can you be sure that phy_init() has been done for all platform HCD users? > ret = usb_add_hcd(xhci->shared_hcd, irq, IRQF_SHARED); > if (ret) > goto dealloc_usb2_hcd; > -- cheers, -roger Texas Instruments Finland Oy, Porkkalankatu 22, 00180 Helsinki. Y-tunnus/Business ID: 0615521-4. Kotipaikka/Domicile: Helsinki -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html