From patchwork Wed May 18 14:17:36 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Arnd Bergmann X-Patchwork-Id: 9119761 Return-Path: X-Original-To: patchwork-linux-samsung-soc@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork1.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.136]) by patchwork1.web.kernel.org (Postfix) with ESMTP id A2D339F37F for ; Wed, 18 May 2016 14:19:08 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id B4E8720165 for ; Wed, 18 May 2016 14:19:07 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id D211A20122 for ; Wed, 18 May 2016 14:19:06 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932259AbcEROTG (ORCPT ); Wed, 18 May 2016 10:19:06 -0400 Received: from mout.kundenserver.de ([212.227.126.187]:62093 "EHLO mout.kundenserver.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932223AbcEROTF (ORCPT ); Wed, 18 May 2016 10:19:05 -0400 Received: from wuerfel.lan. ([78.42.132.4]) by mrelayeu.kundenserver.de (mreue001) with ESMTPA (Nemesis) id 0LcK74-1bSzeW3Kxa-00jsrc; Wed, 18 May 2016 16:18:26 +0200 From: Arnd Bergmann To: Kukjin Kim , Krzysztof Kozlowski Cc: Arnd Bergmann , linux-arm-kernel@lists.infradead.org, linux-samsung-soc@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH] ARM: exynos: don't select keyboard driver Date: Wed, 18 May 2016 16:17:36 +0200 Message-Id: <1463581102-1007639-1-git-send-email-arnd@arndb.de> X-Mailer: git-send-email 2.7.0 X-Provags-ID: V03:K0:7q6gpagsQzK60vrnvWehtsH740VWfafcffXd6L8qQTzy7KGIwTM GfIN3R0xoYxDc9K8EjGskY0MyBCE0Y3+oEuEoPAaV9GoFyFbPd9If1HomDzbDOHg3nGnuKz Gr7vke8d+5olEXDszL7tC4QZcNFm4FN0TxGHMg0fpGzakXljG2U7csjAfHy6UpXXEKZm80v +5y7x7HHO744wS3if3SRw== X-UI-Out-Filterresults: notjunk:1; V01:K0:5jhdwDyi/mQ=:n3xO1hV/KyAva2lYTBBQKE OjXqqgkxr4yjMOAUpUIx3y+nbpu3zpfuspS3yEAScFkrHEudaNfQqzxJcRS5cJkHVJtQZ5UUx 70tDyq3i7i3787wRUc30VMnNtAFszARZRZ6jUjxHktn/2IAa6lFOgsZasgA6yWNyYbIxf5z7H BQ2wqVr5a8OeGcMjkuyUmmcV12qiacCcopXOLPajBVAS8bPKT7jrN/mu7MWHLy+7UwlonSI2m 2fF2OEXkFKx1EvmVw1fqiMzdBBpWjQxPdeAkM67Ic5bXSBN9J9w4jBQZa87c+1TpZGOWX93/X vkqqvTMgWEPDymmIUCC8blPeiBC0k299asyEdMfIM7oFGDPBW3j0EMN49KD9c2z469OYMwkjn lJjNY6XSLwk1neGs4POBlJYgUzX/IdMN4AmJ0CHKTRLmEaUfLSqzbbMBelR4gnxQdziyaeG1U 8/Dq48DU1iKqJqojjRbAlXtbO+if7DLKcB/W1vU8r2m9qOwgPREeOnwCjvQl495v2oEHUoq1J Wzs9pi2qw1wFvkPf6t84z6GydfjfZildf2z1X8ep+CIo/QviUyRUFxqB1dU73C21b5vxV9u1P iWetq9rs5LjBjUzU5OiaBGbfn4X+hGqcgVupV/2QBMByBiAkLeTMNWaEWglnxsuLDNao1Y9xJ dpQ/5eqC/GRdfYy85KQm2t//pVlMLb7ZMOb3MjZItVUinypnccXgH0RZNcfCq+HvTszs= Sender: linux-samsung-soc-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-samsung-soc@vger.kernel.org X-Spam-Status: No, score=-8.3 required=5.0 tests=BAYES_00, RCVD_IN_DNSWL_HI, RP_MATCHES_RCVD, UNPARSEABLE_RELAY autolearn=unavailable version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP 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 Link: https://lkml.org/lkml/2016/2/14/55 Reviewed-by: Javier Martinez Canillas --- arch/arm/configs/exynos_defconfig | 1 + arch/arm/configs/multi_v7_defconfig | 1 + arch/arm/mach-exynos/Kconfig | 1 - 3 files changed, 2 insertions(+), 1 deletion(-) diff --git a/arch/arm/configs/exynos_defconfig b/arch/arm/configs/exynos_defconfig index a8cf295724c5..1124a51e0d16 100644 --- a/arch/arm/configs/exynos_defconfig +++ b/arch/arm/configs/exynos_defconfig @@ -82,6 +82,7 @@ CONFIG_TOUCHSCREEN_MMS114=y CONFIG_INPUT_MISC=y CONFIG_INPUT_MAX77693_HAPTIC=y CONFIG_INPUT_MAX8997_HAPTIC=y +CONFIG_KEYBOARD_SAMSUNG=y CONFIG_SERIAL_8250=y CONFIG_SERIAL_SAMSUNG=y CONFIG_SERIAL_SAMSUNG_CONSOLE=y diff --git a/arch/arm/configs/multi_v7_defconfig b/arch/arm/configs/multi_v7_defconfig index f7e0d49b515a..a9bb659cdbbb 100644 --- a/arch/arm/configs/multi_v7_defconfig +++ b/arch/arm/configs/multi_v7_defconfig @@ -264,6 +264,7 @@ CONFIG_KEYBOARD_TEGRA=y CONFIG_KEYBOARD_SPEAR=y CONFIG_KEYBOARD_ST_KEYSCAN=y CONFIG_KEYBOARD_CROS_EC=m +CONFIG_KEYBOARD_SAMSUNG=m CONFIG_MOUSE_PS2_ELANTECH=y CONFIG_MOUSE_CYAPA=m CONFIG_MOUSE_ELAN_I2C=y diff --git a/arch/arm/mach-exynos/Kconfig b/arch/arm/mach-exynos/Kconfig index dc9b6fb103c6..8ce964ddb4e3 100644 --- a/arch/arm/mach-exynos/Kconfig +++ b/arch/arm/mach-exynos/Kconfig @@ -61,7 +61,6 @@ config ARCH_EXYNOS4 select CLKSRC_SAMSUNG_PWM if CPU_EXYNOS4210 select CPU_EXYNOS4210 select GIC_NON_BANKED - select KEYBOARD_SAMSUNG if INPUT_KEYBOARD select MIGHT_HAVE_CACHE_L2X0 help Samsung EXYNOS4 (Cortex-A9) SoC based systems