On 20/05/2020 12:22, Bryan O'Donoghue wrote:
On 20/05/2020 12:13, Bryan O'Donoghue wrote:
On 20/05/2020 12:08, Bryan O'Donoghue wrote:
On 20/05/2020 11:35, Heikki Krogerus wrote:
On Wed, May 20, 2020 at 11:05:26AM +0100, Bryan O'Donoghue wrote:
When I switched on USB role switching for the tps6598x I completely
forgot
to add the Kconfig dependency.
This patch ensures the dependency is there to prevent compilation
error
when role-switching is off.
There are stubs for the those functions, so there should not be any
compilation errors.
That's what I initially thought too, then I saw this.
git show da4b5d18dd949abdda7c8ea76c9483b5edd49616
but looking at role.h
#if IS_ENABLED(CONFIG_USB_ROLE_SWITCH)
int usb_role_switch_set_role(struct usb_role_switch *sw, enum
usb_role role);
#else
static inline int usb_role_switch_set_role(struct usb_role_switch *sw,
enum usb_role role)
{
return 0;
}
#endif
That should work.
Hmm, let me see if I can figure this out...
Well if I do this
diff --git a/drivers/usb/chipidea/Kconfig b/drivers/usb/chipidea/Kconfig
index d53db520e209..636a5428b47e 100644
--- a/drivers/usb/chipidea/Kconfig
+++ b/drivers/usb/chipidea/Kconfig
@@ -6,7 +6,6 @@ config USB_CHIPIDEA
select EXTCON
select RESET_CONTROLLER
select USB_ULPI_BUS
- select USB_ROLE_SWITCH
my build does this
ah ha - look at what role switch is defaulting to
CONFIG_USB_ROLE_SWITCH=m
So anything linked into the kernel image will not resolve those symbols
So it should be "select USB_ROLE_SWITCH" not "depends on USB_ROLE_SWITCH"
grep -r "USB_ROLE_SWITCH" * | grep depend
drivers/usb/typec/Kconfig: depends on USB_ROLE_SWITCH
grep -r "USB_ROLE_SWITCH" * | grep select
drivers/extcon/Kconfig: select USB_ROLE_SWITCH
drivers/usb/dwc3/Kconfig: select USB_ROLE_SWITCH
drivers/usb/cdns3/Kconfig: select USB_ROLE_SWITCH
drivers/usb/gadget/udc/Kconfig: select USB_ROLE_SWITCH
drivers/usb/mtu3/Kconfig: select USB_ROLE_SWITCH
drivers/usb/musb/Kconfig: select USB_ROLE_SWITCH
drivers/usb/musb/Kconfig: select USB_ROLE_SWITCH
drivers/usb/typec/tcpm/Kconfig: select USB_ROLE_SWITCH
drivers/usb/typec/Kconfig: select USB_ROLE_SWITCH
drivers/usb/typec/mux/Kconfig: select USB_ROLE_SWITCH
drivers/usb/common/Kconfig: select USB_ROLE_SWITCH