Hi Jonas, Thank you for the patch.
On Thu, Jan 29, 2026 at 19:52, Jonas Karlman <[email protected]> wrote: > Rockchip RK3288 and RK3506 contain two DWC2 USB controllers, typically > one controller use dr_mode=otg and the other one use dr_mode=host. > > With USB_GADGET_DWC2_OTG, DM_USB_GADGET and USB_DWC2 enabled this result > in the dwc2-udc-otg driver binding to both controllers, however only one > will probe due to use of dr_mode=host on the other one. > > After the commit 6668b8e7cc68 ("dm: core: Support multiple drivers with > same compatibles") it is possible to bind one controller to the > dwc2-udc-otg driver and the other one to the dwc2_usb driver. > > Move the dr_mode check from of_to_plat() to bind() to allow dm core to > bind the dwc2 host driver to dr_mode=host controllers. > > Before this: > > => dm tree > ... > usb_gadget 0 [ ] dwc2-udc-otg | |-- usb@ff740000 > usb_gadget 1 [ ] dwc2-udc-otg | |-- usb@ff780000 > > => usb start > starting USB... > No USB controllers found > > After this: > > dwc2-udc-otg usb@ff780000: Invalid dr_mode 1 > > => dm tree > ... > usb_gadget 0 [ ] dwc2-udc-otg | |-- usb@ff740000 > usb 0 [ ] dwc2_usb | |-- usb@ff780000 > > => usb start > starting USB... > USB DWC2 > Bus usb@ff780000: 1 USB Device(s) found > > Signed-off-by: Jonas Karlman <[email protected]> Reviewed-by: Mattijs Korpershoek <[email protected]> Marek, can I pick this up since it's gadget or do you want to take it? > --- > v2: Update dev_dbg message to include current dr_mode > --- > drivers/usb/gadget/dwc2_udc_otg.c | 19 +++++++++++++------ > 1 file changed, 13 insertions(+), 6 deletions(-) >

