On 3/31/21 11:48 AM, Randy Dunlap wrote: > On 3/31/21 5:47 AM, Linus Walleij wrote: >> Add depends on OF so we don't get weird build errors on >> randconfig. >> >> Also order selects the same as the other drivers for >> pure aestetic reasons. >> >> Reported-by: Randy Dunlap <rdunlap@xxxxxxxxxxxxx> >> Cc: Álvaro Fernández Rojas <noltari@xxxxxxxxx> >> Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx> >> --- >> drivers/pinctrl/bcm/Kconfig | 6 ++++-- >> 1 file changed, 4 insertions(+), 2 deletions(-) >> >> diff --git a/drivers/pinctrl/bcm/Kconfig b/drivers/pinctrl/bcm/Kconfig >> index 33660e8fec05..17615674ac1a 100644 >> --- a/drivers/pinctrl/bcm/Kconfig >> +++ b/drivers/pinctrl/bcm/Kconfig >> @@ -31,10 +31,12 @@ config PINCTRL_BCM2835 >> >> config PINCTRL_BCM63XX >> bool >> + depends on OF >> + select PINMUX >> + select PINCONF >> select GENERIC_PINCONF >> + select GPIOLIB >> select GPIO_REGMAP >> - select PINCONF >> - select PINMUX >> >> config PINCTRL_BCM6318 >> bool "Broadcom BCM6318 GPIO driver" >> > > That gives me: > > WARNING: unmet direct dependencies detected for PINCTRL_BCM63XX > Depends on [n]: PINCTRL [=y] && OF [=n] > Selected by [y]: > - PINCTRL_BCM6328 [=y] && PINCTRL [=y] && (BMIPS_GENERIC || COMPILE_TEST [=y]) > - PINCTRL_BCM6358 [=y] && PINCTRL [=y] && (BMIPS_GENERIC || COMPILE_TEST [=y]) > - PINCTRL_BCM6362 [=y] && PINCTRL [=y] && (BMIPS_GENERIC || COMPILE_TEST [=y]) > - PINCTRL_BCM63268 [=y] && PINCTRL [=y] && (BMIPS_GENERIC || COMPILE_TEST [=y]) > > and > > ld: drivers/pinctrl/bcm/pinctrl-bcm6328.o: in function `pinconf_generic_dt_node_to_map_pin': > pinctrl-bcm6328.c:(.text+0xe7): undefined reference to `pinconf_generic_dt_node_to_map' > ld: drivers/pinctrl/bcm/pinctrl-bcm6358.o: in function `pinconf_generic_dt_node_to_map_pin': > pinctrl-bcm6358.c:(.text+0x207): undefined reference to `pinconf_generic_dt_node_to_map' > ld: drivers/pinctrl/bcm/pinctrl-bcm6362.o: in function `pinconf_generic_dt_node_to_map_pin': > pinctrl-bcm6362.c:(.text+0xe7): undefined reference to `pinconf_generic_dt_node_to_map' > ld: drivers/pinctrl/bcm/pinctrl-bcm63268.o: in function `pinconf_generic_dt_node_to_map_pin': > pinctrl-bcm63268.c:(.text+0xe7): undefined reference to `pinconf_generic_dt_node_to_map' The additional patch below fixes all of the kconfig warnings and build errors for me. --- From: Randy Dunlap <rdunlap@xxxxxxxxxxxxx> Subject: [PATCH -next] pinctrl: bcm: fix bcx63xx build errors All of the drivers that select PINCTRL_BCM63XX also should depend on OF since 'select' does not follow any dependency chains and there can still be kconfig warnings and build errors without this. pinctrl-bcm6328.c:(.text+0xe7): undefined reference to `pinconf_generic_dt_node_to_map' pinctrl-bcm6358.c:(.text+0x207): undefined reference to `pinconf_generic_dt_node_to_map' pinctrl-bcm6362.c:(.text+0xe7): undefined reference to `pinconf_generic_dt_node_to_map' pinctrl-bcm63268.c:(.text+0xe7): undefined reference to `pinconf_generic_dt_node_to_map' WARNING: unmet direct dependencies detected for PINCTRL_BCM63XX Depends on [n]: PINCTRL [=y] && OF [=n] Selected by [y]: - PINCTRL_BCM6328 [=y] && PINCTRL [=y] && (BMIPS_GENERIC || COMPILE_TEST [=y]) - PINCTRL_BCM6358 [=y] && PINCTRL [=y] && (BMIPS_GENERIC || COMPILE_TEST [=y]) - PINCTRL_BCM6362 [=y] && PINCTRL [=y] && (BMIPS_GENERIC || COMPILE_TEST [=y]) - PINCTRL_BCM63268 [=y] && PINCTRL [=y] && (BMIPS_GENERIC || COMPILE_TEST [=y]) Signed-off-by: Randy Dunlap <rdunlap@xxxxxxxxxxxxx> Cc: Álvaro Fernández Rojas <noltari@xxxxxxxxx> Cc: Linus Walleij <linus.walleij@xxxxxxxxxx> --- drivers/pinctrl/bcm/Kconfig | 6 ++++++ 1 file changed, 6 insertions(+) --- linux-next-20210331.orig/drivers/pinctrl/bcm/Kconfig +++ linux-next-20210331/drivers/pinctrl/bcm/Kconfig @@ -41,6 +41,7 @@ config PINCTRL_BCM63XX config PINCTRL_BCM6318 bool "Broadcom BCM6318 GPIO driver" depends on (BMIPS_GENERIC || COMPILE_TEST) + depends on OF select PINCTRL_BCM63XX default BMIPS_GENERIC help @@ -49,6 +50,7 @@ config PINCTRL_BCM6318 config PINCTRL_BCM6328 bool "Broadcom BCM6328 GPIO driver" depends on (BMIPS_GENERIC || COMPILE_TEST) + depends on OF select PINCTRL_BCM63XX default BMIPS_GENERIC help @@ -57,6 +59,7 @@ config PINCTRL_BCM6328 config PINCTRL_BCM6358 bool "Broadcom BCM6358 GPIO driver" depends on (BMIPS_GENERIC || COMPILE_TEST) + depends on OF select PINCTRL_BCM63XX default BMIPS_GENERIC help @@ -65,6 +68,7 @@ config PINCTRL_BCM6358 config PINCTRL_BCM6362 bool "Broadcom BCM6362 GPIO driver" depends on (BMIPS_GENERIC || COMPILE_TEST) + depends on OF select PINCTRL_BCM63XX default BMIPS_GENERIC help @@ -73,6 +77,7 @@ config PINCTRL_BCM6362 config PINCTRL_BCM6368 bool "Broadcom BCM6368 GPIO driver" depends on (BMIPS_GENERIC || COMPILE_TEST) + depends on OF select PINCTRL_BCM63XX default BMIPS_GENERIC help @@ -81,6 +86,7 @@ config PINCTRL_BCM6368 config PINCTRL_BCM63268 bool "Broadcom BCM63268 GPIO driver" depends on (BMIPS_GENERIC || COMPILE_TEST) + depends on OF select PINCTRL_BCM63XX default BMIPS_GENERIC help