Thread (9 messages) 9 messages, 4 authors, 2021-07-21

Re: [PATCH v3 1/5] usb: dwc3: gadget: set gadgets parent to the right controller

From: Felipe Balbi <balbi@kernel.org>
Date: 2021-07-21 08:13:53

Hi,

Greg KH [off-list ref] writes:
On Mon, Jun 28, 2021 at 05:53:07PM +0200, Michael Grzeschik wrote:
quoted
In case of dwc3 it is possible that the sysdev is the parent of the
controller. To ensure the right dev is set to the gadget's dev parent we
will hand over sysdev instead of dev, which will always point to the
controller.

Signed-off-by: Michael Grzeschik <redacted>

---
   -> v2: first version of patch
   -> v3: -
---
 drivers/usb/dwc3/gadget.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/usb/dwc3/gadget.c b/drivers/usb/dwc3/gadget.c
index af6d7f157989d..8a1b1daff2e97 100644
--- a/drivers/usb/dwc3/gadget.c
+++ b/drivers/usb/dwc3/gadget.c
@@ -3990,7 +3990,7 @@ int dwc3_gadget_init(struct dwc3 *dwc)
 	}
 
 
-	usb_initialize_gadget(dwc->dev, dwc->gadget, dwc_gadget_release);
+	usb_initialize_gadget(dwc->sysdev, dwc->gadget, dwc_gadget_release);
Does this change how the device shows up in sysfs?
it might, but not in all instances of dwc3
Why does the parent not always work properly here?
This is a really old commit by Arnd from back in 2016 (d64ff406e51e)
where it was noticed that dwc3's dma ops weren't properly setup. Arnd
decided to pass a property to tell dwc3 core to use the parent device
for dma operations.

This is not required in all instances of dwc3, though.

-- 
balbi

Attachments

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