From patchwork Mon Feb 29 12:13:31 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Arnd Bergmann X-Patchwork-Id: 102648 Delivered-To: patch@linaro.org Received: by 10.112.199.169 with SMTP id jl9csp1209275lbc; Mon, 29 Feb 2016 04:14:39 -0800 (PST) X-Received: by 10.98.10.139 with SMTP id 11mr21501246pfk.87.1456748078973; Mon, 29 Feb 2016 04:14:38 -0800 (PST) Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id g12si42756096pfj.135.2016.02.29.04.14.38; Mon, 29 Feb 2016 04:14:38 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754562AbcB2MOh (ORCPT + 30 others); Mon, 29 Feb 2016 07:14:37 -0500 Received: from mout.kundenserver.de ([212.227.17.24]:54705 "EHLO mout.kundenserver.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754013AbcB2MOe (ORCPT ); Mon, 29 Feb 2016 07:14:34 -0500 Received: from wuerfel.lan. ([78.42.132.4]) by mrelayeu.kundenserver.de (mreue101) with ESMTPA (Nemesis) id 0Lc8mL-1a9Eso3wBh-00jZCu; Mon, 29 Feb 2016 13:13:40 +0100 From: Arnd Bergmann To: Darren Hart Cc: linux-arm-kernel@lists.infradead.org, Andy Lutomirski , =?utf-8?q?Pali_Roh=C3=A1r?= , Arnd Bergmann , platform-driver-x86@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH] platform/x86: never 'select DMI' from a driver Date: Mon, 29 Feb 2016 13:13:31 +0100 Message-Id: <1456748014-358588-1-git-send-email-arnd@arndb.de> X-Mailer: git-send-email 2.7.0 X-Provags-ID: V03:K0:h9iitAZW1iZpi8mMyql3E+Iwv9HNkBZD5VZiofD/dONq7HFrp8d ahu9pmJ06VXioq+IfFD/NnSGQcCYrAJdg9ADoal0ePqjBWW6ewi5jXTOU2P3iACdOvogVhZ e++fMCCnFS4jex5QU7ZWSH4RAnLQF2gFVtWDrP1fMs+SZisGI0xgi5RMbI6gJZr4qMvVXUo PEnom4y5QymD52gkifBxw== X-UI-Out-Filterresults: notjunk:1; V01:K0:FPKmeEuO/zg=:HigwwShyL7+FRHYtD/OAcQ cQ7/WtZSitUJkWqH/BzgDWk3O4euIGsQwwMwtV1UJAlRGFD6fHEjD63rKEQPKHPpoynoDjTLT dvsLkwIQTiF5sDpjwN1aNAKBibDtC/F3U1afjCHirU+2/FKFCvn/D3A/VXDmrSA6T38xdz7nf OUvdNCu5bCGWdlvdBldripSm7Zi6JPfJpbOHrAdBF84nqEIsYv+RulDKpo0+fOcYzOVmvxwfd aQXT+3DqOqJxnwdfw8L6iRp6BzdTwGiKda7BQbhbhrLnNmzdVNGGQKSmvEAu7CReNp/YiflHt H3t26qLuZYn15sunQKmww5ohBvTJ7yp7lbDktvWHB0NZ+Fk3VywJmBrEPfOneRL2c0SvWVXAt yEZuDIWo/6E/iyXrjak4Jl7847XzjtePfMrRd7ih0emujGLFgGSXXUzAMl0y7IQuDXDQ6xfV/ NM+nbwT/wEyZyuxoTXunU4GaFMDdi6jTIssWLRbelgdSwWn8sE30w1ETJLpkDKgiomiOza63S BQfpR4av7kKJvMQRdWt0uzcg64Gkt12Y3zwJRViXuZwNP/sYhnkm91pEGEAMeLFvhGqIYqY4K KuWFhKI4PLnJLyfJjmuEqPgdVWeQd7xUulZarI4y50aVgPV+F5hD3VWaibUbSW9Se8DpfedAL oV2DtT/Q+qAfmjqxJK+bOX/J4KckfKBlXh3L7EK88tIRRV878dTIFo4xPGqE0FezvNQQ= Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org CONFIG_DMI is a user-selectable Kconfig symbol that some drivers depend on. As part of a recent patch, other drivers started adding a 'select' for the same symbol, which now causes a recursive dependency: drivers/gpio/Kconfig:34:error: recursive dependency detected! subsection "Kconfig recursive dependency limitations" drivers/gpio/Kconfig:34: symbol GPIOLIB is selected by GEOS For a resolution refer to Documentation/kbuild/kconfig-language.txt subsection "Kconfig recursive dependency limitations" arch/x86/Kconfig:2591: symbol GEOS depends on DMI For a resolution refer to Documentation/kbuild/kconfig-language.txt subsection "Kconfig recursive dependency limitations" arch/x86/Kconfig:815: symbol DMI is selected by DELL_LAPTOP For a resolution refer to Documentation/kbuild/kconfig-language.txt subsection "Kconfig recursive dependency limitations" drivers/platform/x86/Kconfig:104: symbol DELL_LAPTOP depends on BACKLIGHT_CLASS_DEVICE For a resolution refer to Documentation/kbuild/kconfig-language.txt subsection "Kconfig recursive dependency limitations" drivers/video/backlight/Kconfig:158: symbol BACKLIGHT_CLASS_DEVICE is selected by FB_BACKLIGHT For a resolution refer to Documentation/kbuild/kconfig-language.txt subsection "Kconfig recursive dependency limitations" drivers/video/fbdev/Kconfig:192: symbol FB_BACKLIGHT is selected by FB_SSD1307 For a resolution refer to Documentation/kbuild/kconfig-language.txt subsection "Kconfig recursive dependency limitations" drivers/video/fbdev/Kconfig:2462: symbol FB_SSD1307 depends on GPIOLIB Basically we should either always use 'depends on' or always use 'select' to avoid this kind of loop. Using 'depends on' is more useful here, as it still allows users to turn off the symbol of they really want to, without having to track down every driver selecting it. Signed-off-by: Arnd Bergmann Fixes: cbd9d95b2b27 ("dell-wmi, dell-laptop: select DMI") --- drivers/platform/x86/Kconfig | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) -- 2.7.0 diff --git a/drivers/platform/x86/Kconfig b/drivers/platform/x86/Kconfig index 659e13b1e6f0..a65d974f387a 100644 --- a/drivers/platform/x86/Kconfig +++ b/drivers/platform/x86/Kconfig @@ -105,6 +105,7 @@ config DELL_LAPTOP tristate "Dell Laptop Extras" depends on X86 depends on DELL_SMBIOS + depends on DMI depends on BACKLIGHT_CLASS_DEVICE depends on ACPI_VIDEO || ACPI_VIDEO = n depends on RFKILL || RFKILL = n @@ -112,7 +113,6 @@ config DELL_LAPTOP select POWER_SUPPLY select LEDS_CLASS select NEW_LEDS - select DMI default n ---help--- This driver adds support for rfkill and backlight control to Dell @@ -121,10 +121,10 @@ config DELL_LAPTOP config DELL_WMI tristate "Dell WMI extras" depends on ACPI_WMI + depends on DMI depends on INPUT depends on ACPI_VIDEO || ACPI_VIDEO = n select INPUT_SPARSEKMAP - select DMI ---help--- Say Y here if you want to support WMI-based hotkeys on Dell laptops.