* [PATCH v3] Skip phy initialization for DWC3 USB Controllers
@ 2021-12-01 6:15 Sandeep Maheswaram
2021-12-01 6:15 ` [PATCH v3] usb: host: xhci-plat: Set XHCI_SKIP_PHY_INIT quirk for DWC3 controller Sandeep Maheswaram
2021-12-02 3:14 ` [PATCH v3] Skip phy initialization for DWC3 USB Controllers Stephen Boyd
0 siblings, 2 replies; 7+ messages in thread
From: Sandeep Maheswaram @ 2021-12-01 6:15 UTC (permalink / raw)
To: Greg Kroah-Hartman, Felipe Balbi, Stephen Boyd, Doug Anderson,
Matthias Kaehlcke, Mathias Nyman
Cc: linux-arm-msm, linux-usb, linux-kernel, quic_pkondeti,
quic_ppratap, Sandeep Maheswaram
Set XHCI_SKIP_PHY_INIT quirk to avoid phy initialization twice.
Runtime suspend of phy drivers was failing from DWC3 driver as
runtime usage value is 2 because the phy is initialized from
DWC3 core and HCD core.
DWC3 manages phy in their core drivers.
Set this quirk to avoid phy initialization in HCD core.
v3:
Dropped the dt property and binding.
Checking for dwc3 compatible in xhci to set the quirk XHCI_SKIP_PHY_INIT.
v2:
Updated the commit descriptions.
Changed subject prefix from dwc to dwc3.
Increased props array size.
Sandeep Maheswaram (1):
usb: host: xhci-plat: Set XHCI_SKIP_PHY_INIT quirk for DWC3 controller
drivers/usb/host/xhci-plat.c | 3 +++
1 file changed, 3 insertions(+)
--
2.7.4
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH v3] usb: host: xhci-plat: Set XHCI_SKIP_PHY_INIT quirk for DWC3 controller
2021-12-01 6:15 [PATCH v3] Skip phy initialization for DWC3 USB Controllers Sandeep Maheswaram
@ 2021-12-01 6:15 ` Sandeep Maheswaram
2021-12-02 3:17 ` Stephen Boyd
2021-12-13 13:57 ` Greg Kroah-Hartman
2021-12-02 3:14 ` [PATCH v3] Skip phy initialization for DWC3 USB Controllers Stephen Boyd
1 sibling, 2 replies; 7+ messages in thread
From: Sandeep Maheswaram @ 2021-12-01 6:15 UTC (permalink / raw)
To: Greg Kroah-Hartman, Felipe Balbi, Stephen Boyd, Doug Anderson,
Matthias Kaehlcke, Mathias Nyman
Cc: linux-arm-msm, linux-usb, linux-kernel, quic_pkondeti,
quic_ppratap, Sandeep Maheswaram
Set XHCI_SKIP_PHY_INIT quirk to avoid phy initialization twice.
Runtime suspend of phy drivers was failing from DWC3 driver as
runtime usage value is 2 because the phy is initialized from
DWC3 core and HCD core.
DWC3 manages phy in their core drivers.
Set this quirk to avoid phy initialization in HCD core.
Signed-off-by: Sandeep Maheswaram <quic_c_sanm@quicinc.com>
---
drivers/usb/host/xhci-plat.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/drivers/usb/host/xhci-plat.c b/drivers/usb/host/xhci-plat.c
index c1edcc9..9bbd939 100644
--- a/drivers/usb/host/xhci-plat.c
+++ b/drivers/usb/host/xhci-plat.c
@@ -327,6 +327,9 @@ static int xhci_plat_probe(struct platform_device *pdev)
&xhci->imod_interval);
}
+ if (of_device_is_compatible(pdev->dev.parent->of_node, "snps,dwc3"))
+ xhci->quirks |= XHCI_SKIP_PHY_INIT;
+
hcd->usb_phy = devm_usb_get_phy_by_phandle(sysdev, "usb-phy", 0);
if (IS_ERR(hcd->usb_phy)) {
ret = PTR_ERR(hcd->usb_phy);
--
2.7.4
^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [PATCH v3] Skip phy initialization for DWC3 USB Controllers
2021-12-01 6:15 [PATCH v3] Skip phy initialization for DWC3 USB Controllers Sandeep Maheswaram
2021-12-01 6:15 ` [PATCH v3] usb: host: xhci-plat: Set XHCI_SKIP_PHY_INIT quirk for DWC3 controller Sandeep Maheswaram
@ 2021-12-02 3:14 ` Stephen Boyd
1 sibling, 0 replies; 7+ messages in thread
From: Stephen Boyd @ 2021-12-02 3:14 UTC (permalink / raw)
To: Doug Anderson, Felipe Balbi, Greg Kroah-Hartman, Mathias Nyman,
Matthias Kaehlcke, Sandeep Maheswaram
Cc: linux-arm-msm, linux-usb, linux-kernel, quic_pkondeti, quic_ppratap
Quoting Sandeep Maheswaram (2021-11-30 22:15:37)
> Set XHCI_SKIP_PHY_INIT quirk to avoid phy initialization twice.
> Runtime suspend of phy drivers was failing from DWC3 driver as
> runtime usage value is 2 because the phy is initialized from
> DWC3 core and HCD core.
> DWC3 manages phy in their core drivers.
> Set this quirk to avoid phy initialization in HCD core.
Don't think we need a cover letter for a single patch.
>
> v3:
> Dropped the dt property and binding.
> Checking for dwc3 compatible in xhci to set the quirk XHCI_SKIP_PHY_INIT.
>
> v2:
> Updated the commit descriptions.
> Changed subject prefix from dwc to dwc3.
> Increased props array size.
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH v3] usb: host: xhci-plat: Set XHCI_SKIP_PHY_INIT quirk for DWC3 controller
2021-12-01 6:15 ` [PATCH v3] usb: host: xhci-plat: Set XHCI_SKIP_PHY_INIT quirk for DWC3 controller Sandeep Maheswaram
@ 2021-12-02 3:17 ` Stephen Boyd
2021-12-14 4:47 ` Sandeep Maheswaram
2021-12-13 13:57 ` Greg Kroah-Hartman
1 sibling, 1 reply; 7+ messages in thread
From: Stephen Boyd @ 2021-12-02 3:17 UTC (permalink / raw)
To: Doug Anderson, Felipe Balbi, Greg Kroah-Hartman, Mathias Nyman,
Matthias Kaehlcke, Sandeep Maheswaram
Cc: linux-arm-msm, linux-usb, linux-kernel, quic_pkondeti, quic_ppratap
Quoting Sandeep Maheswaram (2021-11-30 22:15:38)
> Set XHCI_SKIP_PHY_INIT quirk to avoid phy initialization twice.
> Runtime suspend of phy drivers was failing from DWC3 driver as
> runtime usage value is 2 because the phy is initialized from
> DWC3 core and HCD core.
> DWC3 manages phy in their core drivers.
This looks wrapped weirdly.
> Set this quirk to avoid phy initialization in HCD core.
>
> Signed-off-by: Sandeep Maheswaram <quic_c_sanm@quicinc.com>
Any Fixes tag?
> ---
> drivers/usb/host/xhci-plat.c | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/drivers/usb/host/xhci-plat.c b/drivers/usb/host/xhci-plat.c
> index c1edcc9..9bbd939 100644
> --- a/drivers/usb/host/xhci-plat.c
> +++ b/drivers/usb/host/xhci-plat.c
> @@ -327,6 +327,9 @@ static int xhci_plat_probe(struct platform_device *pdev)
> &xhci->imod_interval);
> }
>
> + if (of_device_is_compatible(pdev->dev.parent->of_node, "snps,dwc3"))
Are we sure that pdev->dev.parent isn't NULL here?
> + xhci->quirks |= XHCI_SKIP_PHY_INIT;
> +
> hcd->usb_phy = devm_usb_get_phy_by_phandle(sysdev, "usb-phy", 0);
> if (IS_ERR(hcd->usb_phy)) {
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH v3] usb: host: xhci-plat: Set XHCI_SKIP_PHY_INIT quirk for DWC3 controller
2021-12-01 6:15 ` [PATCH v3] usb: host: xhci-plat: Set XHCI_SKIP_PHY_INIT quirk for DWC3 controller Sandeep Maheswaram
2021-12-02 3:17 ` Stephen Boyd
@ 2021-12-13 13:57 ` Greg Kroah-Hartman
1 sibling, 0 replies; 7+ messages in thread
From: Greg Kroah-Hartman @ 2021-12-13 13:57 UTC (permalink / raw)
To: Sandeep Maheswaram
Cc: Felipe Balbi, Stephen Boyd, Doug Anderson, Matthias Kaehlcke,
Mathias Nyman, linux-arm-msm, linux-usb, linux-kernel,
quic_pkondeti, quic_ppratap
On Wed, Dec 01, 2021 at 11:45:38AM +0530, Sandeep Maheswaram wrote:
> Set XHCI_SKIP_PHY_INIT quirk to avoid phy initialization twice.
> Runtime suspend of phy drivers was failing from DWC3 driver as
> runtime usage value is 2 because the phy is initialized from
> DWC3 core and HCD core.
> DWC3 manages phy in their core drivers.
> Set this quirk to avoid phy initialization in HCD core.
>
> Signed-off-by: Sandeep Maheswaram <quic_c_sanm@quicinc.com>
> ---
> drivers/usb/host/xhci-plat.c | 3 +++
> 1 file changed, 3 insertions(+)
What changed from previous versions of this patch? That goes below the
--- line always, right?
Please fix up and send a v4.
thanks,
greg k-h
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH v3] usb: host: xhci-plat: Set XHCI_SKIP_PHY_INIT quirk for DWC3 controller
2021-12-02 3:17 ` Stephen Boyd
@ 2021-12-14 4:47 ` Sandeep Maheswaram
2021-12-15 1:02 ` Stephen Boyd
0 siblings, 1 reply; 7+ messages in thread
From: Sandeep Maheswaram @ 2021-12-14 4:47 UTC (permalink / raw)
To: Stephen Boyd, Doug Anderson, Felipe Balbi, Greg Kroah-Hartman,
Mathias Nyman, Matthias Kaehlcke
Cc: linux-arm-msm, linux-usb, linux-kernel, quic_pkondeti, quic_ppratap
On 12/2/2021 8:47 AM, Stephen Boyd wrote:
> Quoting Sandeep Maheswaram (2021-11-30 22:15:38)
>> Set XHCI_SKIP_PHY_INIT quirk to avoid phy initialization twice.
>> Runtime suspend of phy drivers was failing from DWC3 driver as
>> runtime usage value is 2 because the phy is initialized from
>> DWC3 core and HCD core.
>> DWC3 manages phy in their core drivers.
> This looks wrapped weirdly.
>
>> Set this quirk to avoid phy initialization in HCD core.
>>
>> Signed-off-by: Sandeep Maheswaram <quic_c_sanm@quicinc.com>
> Any Fixes tag?
Not sure about the commit id to be used here.
>
>> ---
>> drivers/usb/host/xhci-plat.c | 3 +++
>> 1 file changed, 3 insertions(+)
>>
>> diff --git a/drivers/usb/host/xhci-plat.c b/drivers/usb/host/xhci-plat.c
>> index c1edcc9..9bbd939 100644
>> --- a/drivers/usb/host/xhci-plat.c
>> +++ b/drivers/usb/host/xhci-plat.c
>> @@ -327,6 +327,9 @@ static int xhci_plat_probe(struct platform_device *pdev)
>> &xhci->imod_interval);
>> }
>>
>> + if (of_device_is_compatible(pdev->dev.parent->of_node, "snps,dwc3"))
> Are we sure that pdev->dev.parent isn't NULL here?
+ if (of_device_is_compatible(to_of_node(sysdev->fwnode), "snps,dwc3"))
Will this be ok ?
>
>> + xhci->quirks |= XHCI_SKIP_PHY_INIT;
>> +
>> hcd->usb_phy = devm_usb_get_phy_by_phandle(sysdev, "usb-phy", 0);
>> if (IS_ERR(hcd->usb_phy)) {
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH v3] usb: host: xhci-plat: Set XHCI_SKIP_PHY_INIT quirk for DWC3 controller
2021-12-14 4:47 ` Sandeep Maheswaram
@ 2021-12-15 1:02 ` Stephen Boyd
0 siblings, 0 replies; 7+ messages in thread
From: Stephen Boyd @ 2021-12-15 1:02 UTC (permalink / raw)
To: Doug Anderson, Felipe Balbi, Greg Kroah-Hartman, Mathias Nyman,
Matthias Kaehlcke, Sandeep Maheswaram
Cc: linux-arm-msm, linux-usb, linux-kernel, quic_pkondeti, quic_ppratap
Quoting Sandeep Maheswaram (2021-12-13 20:47:48)
>
> On 12/2/2021 8:47 AM, Stephen Boyd wrote:
> > Quoting Sandeep Maheswaram (2021-11-30 22:15:38)
> >> Set XHCI_SKIP_PHY_INIT quirk to avoid phy initialization twice.
> >> Runtime suspend of phy drivers was failing from DWC3 driver as
> >> runtime usage value is 2 because the phy is initialized from
> >> DWC3 core and HCD core.
> >> DWC3 manages phy in their core drivers.
> > This looks wrapped weirdly.
> >
> >> Set this quirk to avoid phy initialization in HCD core.
> >>
> >> Signed-off-by: Sandeep Maheswaram <quic_c_sanm@quicinc.com>
> > Any Fixes tag?
> Not sure about the commit id to be used here.
Maybe whenever the phy started being initialized twice?
> >
> >> ---
> >> drivers/usb/host/xhci-plat.c | 3 +++
> >> 1 file changed, 3 insertions(+)
> >>
> >> diff --git a/drivers/usb/host/xhci-plat.c b/drivers/usb/host/xhci-plat.c
> >> index c1edcc9..9bbd939 100644
> >> --- a/drivers/usb/host/xhci-plat.c
> >> +++ b/drivers/usb/host/xhci-plat.c
> >> @@ -327,6 +327,9 @@ static int xhci_plat_probe(struct platform_device *pdev)
> >> &xhci->imod_interval);
> >> }
> >>
> >> + if (of_device_is_compatible(pdev->dev.parent->of_node, "snps,dwc3"))
> > Are we sure that pdev->dev.parent isn't NULL here?
>
> + if (of_device_is_compatible(to_of_node(sysdev->fwnode), "snps,dwc3"))
>
> Will this be ok ?
Probably? But I see this function already uses 'sysdev->of_node' so
that's probably all that's necessary assuming sysdev == pdev->dev.parent
in this case.
if (of_device_is_compatible(sysdev->of_node, "snps,dwc3"))
>
> >
> >> + xhci->quirks |= XHCI_SKIP_PHY_INIT;
> >> +
> >> hcd->usb_phy = devm_usb_get_phy_by_phandle(sysdev, "usb-phy", 0);
> >> if (IS_ERR(hcd->usb_phy)) {
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2021-12-15 1:04 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-12-01 6:15 [PATCH v3] Skip phy initialization for DWC3 USB Controllers Sandeep Maheswaram
2021-12-01 6:15 ` [PATCH v3] usb: host: xhci-plat: Set XHCI_SKIP_PHY_INIT quirk for DWC3 controller Sandeep Maheswaram
2021-12-02 3:17 ` Stephen Boyd
2021-12-14 4:47 ` Sandeep Maheswaram
2021-12-15 1:02 ` Stephen Boyd
2021-12-13 13:57 ` Greg Kroah-Hartman
2021-12-02 3:14 ` [PATCH v3] Skip phy initialization for DWC3 USB Controllers Stephen Boyd
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.