This patchset fills in 'otg_caps' of the usb_gadget structure, and configures it on stm32mp15. When dwc2 is configured as dual role (OTG), the USB gadget descriptors (device mode) are configured via configfs. This lead in calling usb_otg_descriptor_init(). In usb_otg_descriptor_init() (drivers/usb/gadget/config.c): - If otg caps structure is provided -> use it - If otg caps structure isn't provided -> HNP and SRP are enabled by default This could lead to a configuration mismatch beetween: - OTG controller: HNP and SRP aren't enabled - gadget descriptors: HNP and SRP are advertised --- Changes in v2: - replace otg_cap bit field by otg_caps structure. - Fix build issue when HOST only mode is selected [1] - DT patch for stm32mp151 merged in v1, so not resent [1] https://syzkaller.appspot.com/bug?extid=7af597ce2b38596c16ea Fabrice Gasnier (2): usb: dwc2: add otg_rev and otg_caps information for gadget driver usb: dwc2: stm32mp15: set otg_rev drivers/usb/dwc2/core.h | 19 ++++++------ drivers/usb/dwc2/debugfs.c | 4 ++- drivers/usb/dwc2/gadget.c | 1 + drivers/usb/dwc2/hcd.c | 12 +++----- drivers/usb/dwc2/params.c | 75 ++++++++++++++++++++++++++-------------------- 5 files changed, 59 insertions(+), 52 deletions(-) -- 2.7.4