[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <e668ca8a-8842-4500-ac8d-ae3798238890@quicinc.com>
Date: Tue, 17 Oct 2023 15:59:12 -0700
From: Elson Serrao <quic_eserrao@...cinc.com>
To: Thinh Nguyen <Thinh.Nguyen@...opsys.com>
CC: Krzysztof Kozlowski <krzysztof.kozlowski@...aro.org>,
Roger Quadros <rogerq@...nel.org>,
"gregkh@...uxfoundation.org" <gregkh@...uxfoundation.org>,
"robh+dt@...nel.org" <robh+dt@...nel.org>,
"krzysztof.kozlowski+dt@...aro.org"
<krzysztof.kozlowski+dt@...aro.org>,
"conor+dt@...nel.org" <conor+dt@...nel.org>,
"devicetree@...r.kernel.org" <devicetree@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"linux-usb@...r.kernel.org" <linux-usb@...r.kernel.org>,
"quic_kriskura@...cinc.com" <quic_kriskura@...cinc.com>
Subject: Re: [PATCH v4 2/3] dt-bindings: usb: snps,dwc3: Add
runtime-suspend-on-usb-suspend property
>> HI Thinh
>>
>> Apologies for the delayed response.
>> Series https://urldefense.com/v3/__https://patchwork.kernel.org/project/linux-usb/cover/1655094654-24052-1-git-send-email-quic_kriskura@quicinc.com/__;!!A4F2R9G_pg!YGlVy7No98zfEM-X5iWRhIUJ-gJEJn_gbTR4k12avzENV1TXf7cwJLZUezYzAU-rnHIbbqA1UWM0IE0R-t5SMMTJLwLZ$
>> from Krishna K, introduced a dt property 'wakeup-source' which indicates a
>> platforms capability to handle wakeup interrupts. Based on this property,
>> glue drivers can inform dwc3 core that the device is wakeup capable through
>> device_init_wakeup(). For example dwc3-qcom driver informs it like below as
>> per the implementation done in the above series
>>
>> wakeup_source = of_property_read_bool(dev->of_node, "wakeup-source");
>> device_init_wakeup(&pdev->dev, wakeup_source);
>> device_init_wakeup(&qcom->dwc3->dev, wakeup_source);
>>
>> The dwc3 core now can access this info through device_may_wakeup(dwc->dev)
>> while checking for bus suspend scenario to know whether the platform is
>> capable of detecting wakeup.
>>
>> Please let me know your thoughts on this approach.
>>
>
> Hi Elson,
>
> I think that it may not work for everyone. Some platforms may indicate
> wakeup-source but should only be applicable in selected scenarios.
> (e.g. Roger's platform was only intended to keep connect on suspend)
>
> Also, how will you disable it for certain platforms? Probably will need
> to use compatible string then too.
>
Hi Thinh
Thank you for your feedback. As an alternative approach, how about
exposing an API from dwc3 core that glue drivers can call to enable
runtime suspend during bus suspend feature ( i.e this API sets
dwc->runtime_suspend_on_usb_suspend field).
Only the platforms that need this feature to be enabled, can call this
API after the child (dwc3 core) probe.
Thanks
Elson
Powered by blists - more mailing lists