Thread (30 messages) 30 messages, 5 authors, 2023-11-07

Re: [RFC 1/8] dt-bindings: usb: qcom,dwc3: Add bindings to enable runtime

From: Krishna Kurapati PSSNV <hidden>
Date: 2023-11-02 17:02:51
Also in: linux-arm-msm, linux-usb, lkml


On 11/2/2023 10:03 PM, Caleb Connolly wrote:

On 17/10/2023 14:18, Krishna Kurapati wrote:
quoted
Add enable-rt binding to let the device register vendor hooks to
core and facilitate runtime suspend and resume.
Hi Krishna,

 From reading through these patches, it's not clear to me why this 
behaviour should be conditional on a new devicetree property. Are there 
some platforms where this behaviour would be undesirable? And if so then 
would it be possible to determine this based on the QSCRATCH registers?
quoted
Hi Caleb,

   There are two types of platforms, some use extcon and some use 
role-switch to deliver vbus/id notifications. Extcon targets already 
have this qscratch modifications present today in vbus and id handlers. 
But for role-switch based targets we don't have any way to get this 
notification to dwc3-qcom. In this implementation, I wanted to get those 
notications from core to glue and for this we implenented vendor hooks.

The property added has been used to do two things:

1. Register glue's vendor hooks to core driver
2. Do runtime_allow for glue (and by default for core as the dt is not 
flattened)

In case of extcon, we don't want to register vendor hooks as 
notifications are not necessary.

For xhci, we opted to enable runtime from userspace.
quoted
Signed-off-by: Krishna Kurapati <redacted>
---
  Documentation/devicetree/bindings/usb/qcom,dwc3.yaml | 5 +++++
  1 file changed, 5 insertions(+)
diff --git a/Documentation/devicetree/bindings/usb/qcom,dwc3.yaml 
b/Documentation/devicetree/bindings/usb/qcom,dwc3.yaml
index cb50261c6a36..788d9c510abc 100644
--- a/Documentation/devicetree/bindings/usb/qcom,dwc3.yaml
+++ b/Documentation/devicetree/bindings/usb/qcom,dwc3.yaml
@@ -151,6 +151,11 @@ properties:
        HS/FS/LS modes are supported.
      type: boolean
+  qcom,enable-rt:
+    description:
+      If present, register vendor hooks to facilitate runtime 
suspend/resume
+    type: boolean
A Krzysztof pointed out, properties should define the hardware 
behaviour, not tot the implementation details. For this case the 
hardware isn't wired up to vbus, so maybe something like "qcom,no-vbus"?
quoted
+
On all targets, vbus is not routed to hardware. This vbus toggle 
indication is given to controller via qscratch only.

Regards,
Krishna,
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help