Hi, Pawel Laszczak <pawell@xxxxxxxxxxx> writes: >>> diff --git a/include/linux/usb/otg.h b/include/linux/usb/otg.h >>> index 69f1b6328532..c156817672c4 100644 >>> --- a/include/linux/usb/otg.h >>> +++ b/include/linux/usb/otg.h >>> @@ -129,4 +129,20 @@ enum usb_dr_mode { >>> */ >>> extern enum usb_dr_mode usb_get_dr_mode(struct device *dev); >>> >>> +/** >>> + * usb_get_dr_mode_from_string - Convert string to dual role mode. >>> + * @str: Pointer to the given string >>> + * >>> + * The function gets string and returns the correspondig enum usb_dr_mode. >>> + */ >>> +extern enum usb_dr_mode usb_get_dr_mode_from_string(const char *str); >>> + >>> +/** >>> + * usb_dr_mode_to_string - Convert dual role mode to string. >>> + * @dr_mode: Pointer to the given dual role mode >>> + * >>> + * The function gets enum usb_dr_mode, and returns the correspondig string. >>> + */ >>> +extern const char *usb_dr_mode_to_string(const enum usb_dr_mode dr_mode); >>> + >>> #endif /* __LINUX_USB_OTG_H */ >> >>Still missing the stubs I mentioned. Did you try compiling with and >>without common enabled? >> > Sorry, I thought that I send answer yesterday but it's look like I prepared the answer but > I forgot to send. > > In /drivers/usb/Kconfig we have: > > config USB > tristate "Support for Host-side USB" > depends on USB_ARCH_HAS_HCD > select USB_COMMON > > and in /drivers/usb/gadget/Kconfig we have: > > menuconfig USB_GADGET > tristate "USB Gadget Support" > select USB_COMMON > > I think that it should cover all cases. > > Am I right ? Run a few tens of randconfig builds and see if you ever catch any problem. I think randconfig can produce a defconfig where USB=n USB_GADGET=n and USB_COMMON=y. -- balbi