[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <c34ea13b-f7ac-22de-6c5d-5e930853415c@quicinc.com>
Date: Mon, 24 Jan 2022 11:01:07 +0530
From: Sandeep Maheswaram <quic_c_sanm@...cinc.com>
To: Greg Kroah-Hartman <gregkh@...uxfoundation.org>
CC: Felipe Balbi <balbi@...nel.org>,
Stephen Boyd <swboyd@...omium.org>,
"Doug Anderson" <dianders@...omium.org>,
Matthias Kaehlcke <mka@...omium.org>,
Mathias Nyman <mathias.nyman@...el.com>,
<linux-arm-msm@...r.kernel.org>, <linux-usb@...r.kernel.org>,
<linux-kernel@...r.kernel.org>, <quic_pkondeti@...cinc.com>,
<quic_ppratap@...cinc.com>
Subject: Re: [PATCH v5] usb: host: xhci-plat: Set XHCI_SKIP_PHY_INIT quirk for
DWC3 controller
Hi Greg,
On 1/7/2022 10:27 AM, Sandeep Maheswaram wrote:
>
> On 1/6/2022 7:55 PM, Greg Kroah-Hartman wrote:
>> On Wed, Dec 22, 2021 at 11:39:43AM +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 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@...cinc.com>
>>> ---
>>> v5:
>>> Added comment to explain the change done.
>>> v4:
>>> Changed pdev->dev.parent->of_node to sysdev->of_node
>>>
>>> drivers/usb/host/xhci-plat.c | 8 ++++++++
>>> 1 file changed, 8 insertions(+)
>>>
>>> diff --git a/drivers/usb/host/xhci-plat.c
>>> b/drivers/usb/host/xhci-plat.c
>>> index c1edcc9..e6014d4 100644
>>> --- a/drivers/usb/host/xhci-plat.c
>>> +++ b/drivers/usb/host/xhci-plat.c
>>> @@ -327,6 +327,14 @@ static int xhci_plat_probe(struct
>>> platform_device *pdev)
>>> &xhci->imod_interval);
>>> }
>>> + /*
>>> + * Set XHCI_SKIP_PHY_INIT quirk to avoid phy initialization twice.
>>> + * DWC3 manages phy in their core drivers. Set this quirk to
>>> avoid phy
>>> + * initialization in HCD core.
>>> + */
>>> + if (of_device_is_compatible(sysdev->of_node, "snps,dwc3"))
>>> + xhci->quirks |= XHCI_SKIP_PHY_INIT;
>>> +
>> Why is this function caring about dwc3 stuff? Shoudn't this be a
>> "generic" device property instead of this device-specific one?
>>
>> thanks,
>>
>> greg k-h
>
> This quirk is set only if required for some controllers (eg: dwc3 &
> cdns3).
>
> Please check below commit.
>
> https://lore.kernel.org/all/20200918131752.16488-5-mathias.nyman@linux.intel.com/
>
>
>
> Regards
>
> Sandeep
>
>
Please let me know if anything more info needed for this patch.
Regards
Sandeep
Powered by blists - more mailing lists