File tree Expand file tree Collapse file tree 2 files changed +6
-3
lines changed Expand file tree Collapse file tree 2 files changed +6
-3
lines changed Original file line number Diff line number Diff line change @@ -4549,7 +4549,8 @@ static int dwc2_hsotg_udc_start(struct usb_gadget *gadget,
4549
4549
hsotg -> gadget .dev .of_node = hsotg -> dev -> of_node ;
4550
4550
hsotg -> gadget .speed = USB_SPEED_UNKNOWN ;
4551
4551
4552
- if (hsotg -> dr_mode == USB_DR_MODE_PERIPHERAL ) {
4552
+ if (hsotg -> dr_mode == USB_DR_MODE_PERIPHERAL ||
4553
+ (hsotg -> dr_mode == USB_DR_MODE_OTG && dwc2_is_device_mode (hsotg ))) {
4553
4554
ret = dwc2_lowlevel_hw_enable (hsotg );
4554
4555
if (ret )
4555
4556
goto err ;
@@ -4611,7 +4612,8 @@ static int dwc2_hsotg_udc_stop(struct usb_gadget *gadget)
4611
4612
if (!IS_ERR_OR_NULL (hsotg -> uphy ))
4612
4613
otg_set_peripheral (hsotg -> uphy -> otg , NULL );
4613
4614
4614
- if (hsotg -> dr_mode == USB_DR_MODE_PERIPHERAL )
4615
+ if (hsotg -> dr_mode == USB_DR_MODE_PERIPHERAL ||
4616
+ (hsotg -> dr_mode == USB_DR_MODE_OTG && dwc2_is_device_mode (hsotg )))
4615
4617
dwc2_lowlevel_hw_disable (hsotg );
4616
4618
4617
4619
return 0 ;
Original file line number Diff line number Diff line change @@ -576,7 +576,8 @@ static int dwc2_driver_probe(struct platform_device *dev)
576
576
dwc2_debugfs_init (hsotg );
577
577
578
578
/* Gadget code manages lowlevel hw on its own */
579
- if (hsotg -> dr_mode == USB_DR_MODE_PERIPHERAL )
579
+ if (hsotg -> dr_mode == USB_DR_MODE_PERIPHERAL ||
580
+ (hsotg -> dr_mode == USB_DR_MODE_OTG && dwc2_is_device_mode (hsotg )))
580
581
dwc2_lowlevel_hw_disable (hsotg );
581
582
582
583
#if IS_ENABLED (CONFIG_USB_DWC2_PERIPHERAL ) || \
You can’t perform that action at this time.
0 commit comments