All of lore.kernel.org
 help / color / mirror / Atom feed
From: Arnd Bergmann <arnd@arndb.de>
To: dri-devel@lists.freedesktop.org
Cc: nouveau@lists.freedesktop.org,
	platform-driver-x86@vger.kernel.org,
	Daniel Vetter <daniel.vetter@intel.com>,
	devel@driverdev.osuosl.org, Daniel Drake <dsd@laptop.org>,
	Jens Frederich <jfrederich@gmail.com>,
	linux-acpi@vger.kernel.org, Ben Skeggs <bskeggs@redhat.com>,
	Russell King <linux+etnaviv@armlinux.org.uk>,
	Darren Hart <dvhart@infradead.org>, Len Brown <lenb@kernel.org>,
	Arnd Bergmann <arnd@arndb.de>,
	intel-gfx@lists.freedesktop.org, etnaviv@lists.freedesktop.org,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	"Rafael J. Wysocki" <rjw@rjwysocki.net>,
	linux-kernel@vger.kernel.org,
	Andy Shevchenko <andy@infradead.org>
Subject: [PATCH 2/3] ACPI/DRM: rework ACPI_VIDEO Kconfig dependencies
Date: Wed, 26 Jul 2017 15:53:11 +0200	[thread overview]
Message-ID: <20170726135312.2214309-3-arnd@arndb.de> (raw)
In-Reply-To: <20170726135312.2214309-1-arnd@arndb.de>

ACPI_VIDEO keeps causing problems with circular Kconfig dependencies,
as it depends on a couple of other symbols, and it gets selected by
drivers that may end up being depending on others.

This is an attempt to simplify this by changing all drivers that
currently 'select ACPI_VIDEO' to use 'depends on'. This by itself
simplifies the dependency lists for the other drivers. We make
ACPI_VIDEO 'default y' to avoid having it turned off for 'make
oldconfig' users. This should again be fine as x86 users will
normally want this enabled and the option is not available elsewhere.

I'm moving the 'select BACKLIGHT_CLASS_DEVICE/BACKLIGHT_LCD_SUPPORT'
into ACPI_VIDEO as a further simplification, those were already
selected by anything that selected ACPI_VIDEO before.

Changing the INPUT dependency in ACPI_CMPC is necessary to avoid a
circular dependency with X86_PLATFORM_DEVICES/NOUVEAU.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
 drivers/acpi/Kconfig            |  5 ++++-
 drivers/gpu/drm/gma500/Kconfig  |  6 +-----
 drivers/gpu/drm/i915/Kconfig    |  7 +------
 drivers/gpu/drm/nouveau/Kconfig | 10 ++--------
 drivers/platform/x86/Kconfig    |  6 ++----
 5 files changed, 10 insertions(+), 24 deletions(-)

diff --git a/drivers/acpi/Kconfig b/drivers/acpi/Kconfig
index 1ce52f84dc23..a8f5a40e2914 100644
--- a/drivers/acpi/Kconfig
+++ b/drivers/acpi/Kconfig
@@ -182,9 +182,12 @@ config ACPI_BUTTON
 
 config ACPI_VIDEO
 	tristate "Video"
-	depends on X86 && BACKLIGHT_CLASS_DEVICE
+	depends on X86
 	depends on INPUT
 	select THERMAL
+	select BACKLIGHT_CLASS_DEVICE
+	select BACKLIGHT_LCD_SUPPORT
+	default y
 	help
 	  This driver implements the ACPI Extensions For Display Adapters
 	  for integrated graphics devices on motherboard, as specified in
diff --git a/drivers/gpu/drm/gma500/Kconfig b/drivers/gpu/drm/gma500/Kconfig
index 52d855cb0569..41878bb05067 100644
--- a/drivers/gpu/drm/gma500/Kconfig
+++ b/drivers/gpu/drm/gma500/Kconfig
@@ -1,13 +1,9 @@
 config DRM_GMA500
 	tristate "Intel GMA5/600 KMS Framebuffer"
 	depends on DRM && PCI && X86 && MMU
+	depends on ACPI_VIDEO || !ACPI
 	select DRM_KMS_HELPER
 	select DRM_TTM
-	# GMA500 depends on ACPI_VIDEO when ACPI is enabled, just like i915
-	select ACPI_VIDEO if ACPI
-	select BACKLIGHT_CLASS_DEVICE if ACPI
-	select BACKLIGHT_LCD_SUPPORT if ACPI
-	select INPUT if ACPI
 	help
 	  Say yes for an experimental 2D KMS framebuffer driver for the
 	  Intel GMA500 ('Poulsbo') and other Intel IMG based graphics
diff --git a/drivers/gpu/drm/i915/Kconfig b/drivers/gpu/drm/i915/Kconfig
index e9e64e8e9765..22978c88c7bf 100644
--- a/drivers/gpu/drm/i915/Kconfig
+++ b/drivers/gpu/drm/i915/Kconfig
@@ -2,6 +2,7 @@ config DRM_I915
 	tristate "Intel 8xx/9xx/G3x/G4x/HD Graphics"
 	depends on DRM
 	depends on X86 && PCI
+	depends on ACPI_VIDEO || !ACPI
 	select INTEL_GTT
 	select INTERVAL_TREE
 	# we need shmfs for the swappable backing store, and in particular
@@ -12,12 +13,6 @@ config DRM_I915
 	select DRM_PANEL
 	select DRM_MIPI_DSI
 	select RELAY
-	# i915 depends on ACPI_VIDEO when ACPI is enabled
-	# but for select to work, need to select ACPI_VIDEO's dependencies, ick
-	select BACKLIGHT_LCD_SUPPORT if ACPI
-	select BACKLIGHT_CLASS_DEVICE if ACPI
-	select INPUT if ACPI
-	select ACPI_VIDEO if ACPI
 	select ACPI_BUTTON if ACPI
 	select SYNC_FILE
 	select IOSF_MBI
diff --git a/drivers/gpu/drm/nouveau/Kconfig b/drivers/gpu/drm/nouveau/Kconfig
index c02a13406a81..8ac61658cec1 100644
--- a/drivers/gpu/drm/nouveau/Kconfig
+++ b/drivers/gpu/drm/nouveau/Kconfig
@@ -1,21 +1,15 @@
 config DRM_NOUVEAU
 	tristate "Nouveau (NVIDIA) cards"
 	depends on DRM && PCI && MMU
+	depends on ACPI_VIDEO || !(ACPI && X86)
         select FW_LOADER
 	select DRM_KMS_HELPER
 	select DRM_TTM
-	select FB_BACKLIGHT if DRM_NOUVEAU_BACKLIGHT
-	select ACPI_VIDEO if ACPI && X86 && BACKLIGHT_CLASS_DEVICE && INPUT
+	select FB_BACKLIGHT if DRM_NOUVEAU_BACKLIGHT && FB
 	select X86_PLATFORM_DEVICES if ACPI && X86
 	select ACPI_WMI if ACPI && X86
 	select MXM_WMI if ACPI && X86
 	select POWER_SUPPLY
-	# Similar to i915, we need to select ACPI_VIDEO and it's dependencies
-	select BACKLIGHT_LCD_SUPPORT if ACPI && X86
-	select BACKLIGHT_CLASS_DEVICE if ACPI && X86
-	select INPUT if ACPI && X86
-	select THERMAL if ACPI && X86
-	select ACPI_VIDEO if ACPI && X86
 	select DRM_VM
 	help
 	  Choose this option for open-source NVIDIA support.
diff --git a/drivers/platform/x86/Kconfig b/drivers/platform/x86/Kconfig
index e0ca673bf564..2d9fb46a8d11 100644
--- a/drivers/platform/x86/Kconfig
+++ b/drivers/platform/x86/Kconfig
@@ -17,7 +17,7 @@ if X86_PLATFORM_DEVICES
 
 config ACER_WMI
 	tristate "Acer WMI Laptop Extras"
-	depends on ACPI
+	depends on ACPI_VIDEO
 	select LEDS_CLASS
 	select NEW_LEDS
 	depends on BACKLIGHT_CLASS_DEVICE
@@ -26,8 +26,6 @@ config ACER_WMI
 	depends on RFKILL || RFKILL = n
 	depends on ACPI_WMI
 	select INPUT_SPARSEKMAP
-	# Acer WMI depends on ACPI_VIDEO when ACPI is enabled
-        select ACPI_VIDEO if ACPI
 	---help---
 	  This is a driver for newer Acer (and Wistron) laptops. It adds
 	  wireless radio and bluetooth control, and on some laptops,
@@ -783,7 +781,7 @@ config ACPI_CMPC
 	tristate "CMPC Laptop Extras"
 	depends on ACPI
 	depends on RFKILL || RFKILL=n
-	select INPUT
+	depends on INPUT
 	select BACKLIGHT_CLASS_DEVICE
 	select BACKLIGHT_LCD_SUPPORT
 	default n
-- 
2.9.0

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

WARNING: multiple messages have this Message-ID (diff)
From: Arnd Bergmann <arnd@arndb.de>
To: dri-devel@lists.freedesktop.org
Cc: Arnd Bergmann <arnd@arndb.de>,
	"Rafael J. Wysocki" <rjw@rjwysocki.net>,
	Len Brown <lenb@kernel.org>, Lucas Stach <l.stach@pengutronix.de>,
	Russell King <linux+etnaviv@armlinux.org.uk>,
	Christian Gmeiner <christian.gmeiner@gmail.com>,
	David Airlie <airlied@linux.ie>,
	Patrik Jakobsson <patrik.r.jakobsson@gmail.com>,
	Daniel Vetter <daniel.vetter@intel.com>,
	Jani Nikula <jani.nikula@linux.intel.com>,
	Ben Skeggs <bskeggs@redhat.com>,
	Darren Hart <dvhart@infradead.org>,
	Andy Shevchenko <andy@infradead.org>,
	Jens Frederich <jfrederich@gmail.com>,
	Daniel Drake <dsd@laptop.org>,
	Jon Nettleton <jon.nettleton@gmail.com>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	linux-acpi@vger.kernel.org, linux-kernel@vger.kernel.org,
	etnaviv@lists.freedesktop.org, intel-gfx@lists.freedesktop.org,
	nouveau@lists.freedesktop.org,
	platform-driver-x86@vger.kernel.org, devel@driverdev.osuosl.org
Subject: [PATCH 2/3] ACPI/DRM: rework ACPI_VIDEO Kconfig dependencies
Date: Wed, 26 Jul 2017 15:53:11 +0200	[thread overview]
Message-ID: <20170726135312.2214309-3-arnd@arndb.de> (raw)
In-Reply-To: <20170726135312.2214309-1-arnd@arndb.de>

ACPI_VIDEO keeps causing problems with circular Kconfig dependencies,
as it depends on a couple of other symbols, and it gets selected by
drivers that may end up being depending on others.

This is an attempt to simplify this by changing all drivers that
currently 'select ACPI_VIDEO' to use 'depends on'. This by itself
simplifies the dependency lists for the other drivers. We make
ACPI_VIDEO 'default y' to avoid having it turned off for 'make
oldconfig' users. This should again be fine as x86 users will
normally want this enabled and the option is not available elsewhere.

I'm moving the 'select BACKLIGHT_CLASS_DEVICE/BACKLIGHT_LCD_SUPPORT'
into ACPI_VIDEO as a further simplification, those were already
selected by anything that selected ACPI_VIDEO before.

Changing the INPUT dependency in ACPI_CMPC is necessary to avoid a
circular dependency with X86_PLATFORM_DEVICES/NOUVEAU.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
 drivers/acpi/Kconfig            |  5 ++++-
 drivers/gpu/drm/gma500/Kconfig  |  6 +-----
 drivers/gpu/drm/i915/Kconfig    |  7 +------
 drivers/gpu/drm/nouveau/Kconfig | 10 ++--------
 drivers/platform/x86/Kconfig    |  6 ++----
 5 files changed, 10 insertions(+), 24 deletions(-)

diff --git a/drivers/acpi/Kconfig b/drivers/acpi/Kconfig
index 1ce52f84dc23..a8f5a40e2914 100644
--- a/drivers/acpi/Kconfig
+++ b/drivers/acpi/Kconfig
@@ -182,9 +182,12 @@ config ACPI_BUTTON
 
 config ACPI_VIDEO
 	tristate "Video"
-	depends on X86 && BACKLIGHT_CLASS_DEVICE
+	depends on X86
 	depends on INPUT
 	select THERMAL
+	select BACKLIGHT_CLASS_DEVICE
+	select BACKLIGHT_LCD_SUPPORT
+	default y
 	help
 	  This driver implements the ACPI Extensions For Display Adapters
 	  for integrated graphics devices on motherboard, as specified in
diff --git a/drivers/gpu/drm/gma500/Kconfig b/drivers/gpu/drm/gma500/Kconfig
index 52d855cb0569..41878bb05067 100644
--- a/drivers/gpu/drm/gma500/Kconfig
+++ b/drivers/gpu/drm/gma500/Kconfig
@@ -1,13 +1,9 @@
 config DRM_GMA500
 	tristate "Intel GMA5/600 KMS Framebuffer"
 	depends on DRM && PCI && X86 && MMU
+	depends on ACPI_VIDEO || !ACPI
 	select DRM_KMS_HELPER
 	select DRM_TTM
-	# GMA500 depends on ACPI_VIDEO when ACPI is enabled, just like i915
-	select ACPI_VIDEO if ACPI
-	select BACKLIGHT_CLASS_DEVICE if ACPI
-	select BACKLIGHT_LCD_SUPPORT if ACPI
-	select INPUT if ACPI
 	help
 	  Say yes for an experimental 2D KMS framebuffer driver for the
 	  Intel GMA500 ('Poulsbo') and other Intel IMG based graphics
diff --git a/drivers/gpu/drm/i915/Kconfig b/drivers/gpu/drm/i915/Kconfig
index e9e64e8e9765..22978c88c7bf 100644
--- a/drivers/gpu/drm/i915/Kconfig
+++ b/drivers/gpu/drm/i915/Kconfig
@@ -2,6 +2,7 @@ config DRM_I915
 	tristate "Intel 8xx/9xx/G3x/G4x/HD Graphics"
 	depends on DRM
 	depends on X86 && PCI
+	depends on ACPI_VIDEO || !ACPI
 	select INTEL_GTT
 	select INTERVAL_TREE
 	# we need shmfs for the swappable backing store, and in particular
@@ -12,12 +13,6 @@ config DRM_I915
 	select DRM_PANEL
 	select DRM_MIPI_DSI
 	select RELAY
-	# i915 depends on ACPI_VIDEO when ACPI is enabled
-	# but for select to work, need to select ACPI_VIDEO's dependencies, ick
-	select BACKLIGHT_LCD_SUPPORT if ACPI
-	select BACKLIGHT_CLASS_DEVICE if ACPI
-	select INPUT if ACPI
-	select ACPI_VIDEO if ACPI
 	select ACPI_BUTTON if ACPI
 	select SYNC_FILE
 	select IOSF_MBI
diff --git a/drivers/gpu/drm/nouveau/Kconfig b/drivers/gpu/drm/nouveau/Kconfig
index c02a13406a81..8ac61658cec1 100644
--- a/drivers/gpu/drm/nouveau/Kconfig
+++ b/drivers/gpu/drm/nouveau/Kconfig
@@ -1,21 +1,15 @@
 config DRM_NOUVEAU
 	tristate "Nouveau (NVIDIA) cards"
 	depends on DRM && PCI && MMU
+	depends on ACPI_VIDEO || !(ACPI && X86)
         select FW_LOADER
 	select DRM_KMS_HELPER
 	select DRM_TTM
-	select FB_BACKLIGHT if DRM_NOUVEAU_BACKLIGHT
-	select ACPI_VIDEO if ACPI && X86 && BACKLIGHT_CLASS_DEVICE && INPUT
+	select FB_BACKLIGHT if DRM_NOUVEAU_BACKLIGHT && FB
 	select X86_PLATFORM_DEVICES if ACPI && X86
 	select ACPI_WMI if ACPI && X86
 	select MXM_WMI if ACPI && X86
 	select POWER_SUPPLY
-	# Similar to i915, we need to select ACPI_VIDEO and it's dependencies
-	select BACKLIGHT_LCD_SUPPORT if ACPI && X86
-	select BACKLIGHT_CLASS_DEVICE if ACPI && X86
-	select INPUT if ACPI && X86
-	select THERMAL if ACPI && X86
-	select ACPI_VIDEO if ACPI && X86
 	select DRM_VM
 	help
 	  Choose this option for open-source NVIDIA support.
diff --git a/drivers/platform/x86/Kconfig b/drivers/platform/x86/Kconfig
index e0ca673bf564..2d9fb46a8d11 100644
--- a/drivers/platform/x86/Kconfig
+++ b/drivers/platform/x86/Kconfig
@@ -17,7 +17,7 @@ if X86_PLATFORM_DEVICES
 
 config ACER_WMI
 	tristate "Acer WMI Laptop Extras"
-	depends on ACPI
+	depends on ACPI_VIDEO
 	select LEDS_CLASS
 	select NEW_LEDS
 	depends on BACKLIGHT_CLASS_DEVICE
@@ -26,8 +26,6 @@ config ACER_WMI
 	depends on RFKILL || RFKILL = n
 	depends on ACPI_WMI
 	select INPUT_SPARSEKMAP
-	# Acer WMI depends on ACPI_VIDEO when ACPI is enabled
-        select ACPI_VIDEO if ACPI
 	---help---
 	  This is a driver for newer Acer (and Wistron) laptops. It adds
 	  wireless radio and bluetooth control, and on some laptops,
@@ -783,7 +781,7 @@ config ACPI_CMPC
 	tristate "CMPC Laptop Extras"
 	depends on ACPI
 	depends on RFKILL || RFKILL=n
-	select INPUT
+	depends on INPUT
 	select BACKLIGHT_CLASS_DEVICE
 	select BACKLIGHT_LCD_SUPPORT
 	default n
-- 
2.9.0

  parent reply	other threads:[~2017-07-26 13:53 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-07-26 13:53 [PATCH 0/3] Kconfig dependencies: acpi-video, backlight and thermal Arnd Bergmann
2017-07-26 13:53 ` Arnd Bergmann
2017-07-26 13:53 ` [PATCH 1/3] backlight: always select BACKLIGHT_LCD_SUPPORT for BACKLIGHT_CLASS_DEVICE Arnd Bergmann
2017-07-26 13:53   ` Arnd Bergmann
2017-07-26 15:38   ` Andy Shevchenko
2017-07-26 15:38     ` Andy Shevchenko
2017-07-26 13:53 ` Arnd Bergmann [this message]
2017-07-26 13:53   ` [PATCH 2/3] ACPI/DRM: rework ACPI_VIDEO Kconfig dependencies Arnd Bergmann
2017-07-26 18:23   ` Rafael J. Wysocki
2017-07-26 18:23     ` Rafael J. Wysocki
2017-07-26 13:53 ` [PATCH 3/3] drm/etnaviv: add thermal dependency Arnd Bergmann
2017-07-26 13:53   ` Arnd Bergmann
2017-08-08 11:16   ` Lucas Stach
2017-08-08 11:16     ` Lucas Stach
2017-07-26 14:35 ` ✓ Fi.CI.BAT: success for Kconfig dependencies: acpi-video, backlight and thermal Patchwork
2017-07-26 14:40 ` [Intel-gfx] [PATCH 0/3] " Daniel Vetter
2017-07-26 14:40   ` Daniel Vetter
2017-07-31 11:28   ` Jani Nikula

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20170726135312.2214309-3-arnd@arndb.de \
    --to=arnd@arndb.de \
    --cc=andy@infradead.org \
    --cc=bskeggs@redhat.com \
    --cc=daniel.vetter@intel.com \
    --cc=devel@driverdev.osuosl.org \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=dsd@laptop.org \
    --cc=dvhart@infradead.org \
    --cc=etnaviv@lists.freedesktop.org \
    --cc=gregkh@linuxfoundation.org \
    --cc=intel-gfx@lists.freedesktop.org \
    --cc=jfrederich@gmail.com \
    --cc=lenb@kernel.org \
    --cc=linux+etnaviv@armlinux.org.uk \
    --cc=linux-acpi@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=nouveau@lists.freedesktop.org \
    --cc=platform-driver-x86@vger.kernel.org \
    --cc=rjw@rjwysocki.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.