On Wed, Sep 10, 2014 at 10:06:58AM +0200, Tobias Klauser wrote: > If SERIAL_MCTRL_GPIO is selected but GPIOLIB is not, the noop functions > from serial_mctrl_gpio.h are pulled in. However, serial_mctrl_gpio.c is > still compiled, leading to function redefinition build errors. Since all > drivers that include serial_mctrl_gpio.h also depend on > SERIAL_MCTRL_GPIO, let it depend on GPIOLIB as well remove the noop > functions alltogether. > > Reported-by: Jim Davis <jim.epost@xxxxxxxxx> > Signed-off-by: Tobias Klauser <tklauser@xxxxxxxxxx> > --- > drivers/tty/serial/Kconfig | 1 + > drivers/tty/serial/serial_mctrl_gpio.h | 35 ---------------------------------- > 2 files changed, 1 insertion(+), 35 deletions(-) I fixed this yesterday with commit below from Alexander, which does things a bit differently than you. Any objections to it? thanks, greg k-h
>From efb089517d2f34a58aceb600ab58b0ca3db1fa07 Mon Sep 17 00:00:00 2001 From: Alexander Shiyan <shc_work@xxxxxxx> Date: Tue, 9 Sep 2014 08:14:36 +0400 Subject: serial: clps711x: Fix COMPILE_TEST build for target without GPIOLIB support The patch fixes the following build error of CLPS711X serial driver for targets without GPIOLIB support: >> drivers/tty/serial/serial_mctrl_gpio.c:44:6: error: redefinition of 'mctrl_gpio_set' void mctrl_gpio_set(struct mctrl_gpios *gpios, unsigned int mctrl) ^ In file included from drivers/tty/serial/serial_mctrl_gpio.c:23:0: drivers/tty/serial/serial_mctrl_gpio.h:80:6: note: previous definition of 'mctrl_gpio_set' was here void mctrl_gpio_set(struct mctrl_gpios *gpios, unsigned int mctrl) ^ Reported-by: kbuild test robot <fengguang.wu@xxxxxxxxx> Signed-off-by: Alexander Shiyan <shc_work@xxxxxxx> Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx> --- drivers/tty/serial/Kconfig | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/tty/serial/Kconfig b/drivers/tty/serial/Kconfig index 8079f5225575..81f6ee7d4223 100644 --- a/drivers/tty/serial/Kconfig +++ b/drivers/tty/serial/Kconfig @@ -222,7 +222,7 @@ config SERIAL_CLPS711X tristate "CLPS711X serial port support" depends on ARCH_CLPS711X || COMPILE_TEST select SERIAL_CORE - select SERIAL_MCTRL_GPIO + select SERIAL_MCTRL_GPIO if GPIOLIB help This enables the driver for the on-chip UARTs of the Cirrus Logic EP711x/EP721x/EP731x processors. -- 2.1.0