ARM: exynos: don't select keyboard driver
authorArnd Bergmann <arnd@arndb.de>
Wed, 18 May 2016 14:17:36 +0000 (16:17 +0200)
committerKrzysztof Kozlowski <k.kozlowski@samsung.com>
Wed, 18 May 2016 14:58:10 +0000 (16:58 +0200)
commit8a6f71ccb6c39ca5ae442d1478d3a076e2b1361e
tree699dc2a0f34ada295bf8bbe847ad2c42062584c9
parent4cb54493ab2003568222e6ad7449747354f22ce3
ARM: exynos: don't select keyboard driver

The samsung-keypad driver is implicitly selected by ARCH_EXYNOS4 (why?),
but this fails if CONFIG_INPUT is a loadable module:

drivers/input/built-in.o: In function `samsung_keypad_remove':
drivers/input/keyboard/samsung-keypad.c:461: undefined reference to `input_unregister_device'
drivers/input/built-in.o: In function `samsung_keypad_irq':
drivers/input/keyboard/samsung-keypad.c:137: undefined reference to `input_event'
drivers/input/built-in.o: In function `samsung_keypad_irq':
include/linux/input.h:389: undefined reference to `input_event'
drivers/input/built-in.o: In function `samsung_keypad_probe':
drivers/input/keyboard/samsung-keypad.c:358: undefined reference to `devm_input_allocate_device'
drivers/input/built-in.o:(.debug_addr+0x34): undefined reference to `input_set_capability'

This removes the 'select' as suggested by Krzysztof Kozlowski and
instead enables the driver from the defconfig files.

The problem does not happen on mainline kernels, as we don't normally
build built-in input drivers when CONFIG_INPUT=m, but I am experimenting
with a patch to change this, and the samsung keypad driver showed up
as one example that was silently broken before.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Link: https://lkml.org/lkml/2016/2/14/55
Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
arch/arm/configs/exynos_defconfig
arch/arm/configs/multi_v7_defconfig
arch/arm/mach-exynos/Kconfig