Message ID | 20211027132732.3993279-1-arnd@kernel.org |
---|---|
State | New |
Headers | show |
Series | [1/3] fbdev: rework FB_DDC dependencies | expand |
On Wed, Oct 27, 2021 at 03:27:12PM +0200, Arnd Bergmann wrote: > From: Arnd Bergmann <arnd@arndb.de> > > Selecting FB_DDC currently turns on CONFIG_I2C implicitly, > which is often not desired and can lead to circular dependencies. > > Change this to a 'depends on' and change all drivers that > rely on FB_DDC to have an appropriate I2C dependency as well. No objections from me. Acked-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> > Signed-off-by: Arnd Bergmann <arnd@arndb.de> > --- > drivers/video/fbdev/Kconfig | 17 +++++++++++++---- > 1 file changed, 13 insertions(+), 4 deletions(-) > > diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig > index 6ed5e608dd04..c187a93c9a16 100644 > --- a/drivers/video/fbdev/Kconfig > +++ b/drivers/video/fbdev/Kconfig > @@ -62,9 +62,8 @@ config FIRMWARE_EDID > > config FB_DDC > tristate > - depends on FB > + depends on FB && I2C > select I2C_ALGOBIT > - select I2C > > config FB_BOOT_VESA_SUPPORT > bool > @@ -356,6 +355,7 @@ config FB_CYBER2000 > config FB_CYBER2000_DDC > bool "DDC for CyberPro support" > depends on FB_CYBER2000 > + depends on I2C=y || I2C=FB_CYBER2000 > select FB_DDC > default y > help > @@ -894,6 +894,7 @@ config FB_NVIDIA > config FB_NVIDIA_I2C > bool "Enable DDC Support" > depends on FB_NVIDIA > + depends on I2C=y || I2C=FB_NVIDIA > select FB_DDC > help > This enables I2C support for nVidia Chipsets. This is used > @@ -940,6 +941,7 @@ config FB_RIVA > config FB_RIVA_I2C > bool "Enable DDC Support" > depends on FB_RIVA > + depends on I2C=y || I2C=FB_RIVA > select FB_DDC > help > This enables I2C support for nVidia Chipsets. This is used > @@ -967,7 +969,7 @@ config FB_RIVA_BACKLIGHT > > config FB_I740 > tristate "Intel740 support" > - depends on FB && PCI > + depends on FB && PCI && I2C > select FB_MODE_HELPERS > select FB_CFB_FILLRECT > select FB_CFB_COPYAREA > @@ -1021,6 +1023,7 @@ config FB_I810_GTF > config FB_I810_I2C > bool "Enable DDC Support" > depends on FB_I810 && FB_I810_GTF > + depends on I2C=y || I2C=FB_I810 > select FB_DDC > help > Add DDC/I2C support for i810fb. This will allow the driver to get > @@ -1076,6 +1079,7 @@ config FB_INTEL_DEBUG > config FB_INTEL_I2C > bool "DDC/I2C for Intel framebuffer support" > depends on FB_INTEL > + depends on I2C=y || I2C=FB_INTEL > select FB_DDC > default y > help > @@ -1155,6 +1159,7 @@ config FB_MATROX_G > config FB_MATROX_I2C > tristate "Matrox I2C support" > depends on FB_MATROX > + depends on I2C=y || I2C=FB_MATROX > select FB_DDC > help > This drivers creates I2C buses which are needed for accessing the > @@ -1220,6 +1225,7 @@ config FB_RADEON > config FB_RADEON_I2C > bool "DDC/I2C for ATI Radeon support" > depends on FB_RADEON > + depends on I2C=y || I2C=FB_RADEON > select FB_DDC > default y > help > @@ -1329,6 +1335,7 @@ config FB_S3 > config FB_S3_DDC > bool "DDC for S3 support" > depends on FB_S3 > + depends on I2C=y || I2C=FB_S3 > select FB_DDC > default y > help > @@ -1354,6 +1361,7 @@ config FB_SAVAGE > config FB_SAVAGE_I2C > bool "Enable DDC2 Support" > depends on FB_SAVAGE > + depends on I2C=y || I2C=FB_SAVAGE > select FB_DDC > help > This enables I2C support for S3 Savage Chipsets. This is used > @@ -1493,6 +1501,7 @@ config FB_3DFX_ACCEL > config FB_3DFX_I2C > bool "Enable DDC/I2C support" > depends on FB_3DFX > + depends on I2C=y || I2C=FB_3DFX > select FB_DDC > default y > help > @@ -1532,7 +1541,7 @@ config FB_VT8623 > > config FB_TRIDENT > tristate "Trident/CyberXXX/CyberBlade support" > - depends on FB && PCI > + depends on FB && PCI && I2C > select FB_CFB_FILLRECT > select FB_CFB_COPYAREA > select FB_CFB_IMAGEBLIT > -- > 2.29.2 > -- With Best Regards, Andy Shevchenko
diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig index 6ed5e608dd04..c187a93c9a16 100644 --- a/drivers/video/fbdev/Kconfig +++ b/drivers/video/fbdev/Kconfig @@ -62,9 +62,8 @@ config FIRMWARE_EDID config FB_DDC tristate - depends on FB + depends on FB && I2C select I2C_ALGOBIT - select I2C config FB_BOOT_VESA_SUPPORT bool @@ -356,6 +355,7 @@ config FB_CYBER2000 config FB_CYBER2000_DDC bool "DDC for CyberPro support" depends on FB_CYBER2000 + depends on I2C=y || I2C=FB_CYBER2000 select FB_DDC default y help @@ -894,6 +894,7 @@ config FB_NVIDIA config FB_NVIDIA_I2C bool "Enable DDC Support" depends on FB_NVIDIA + depends on I2C=y || I2C=FB_NVIDIA select FB_DDC help This enables I2C support for nVidia Chipsets. This is used @@ -940,6 +941,7 @@ config FB_RIVA config FB_RIVA_I2C bool "Enable DDC Support" depends on FB_RIVA + depends on I2C=y || I2C=FB_RIVA select FB_DDC help This enables I2C support for nVidia Chipsets. This is used @@ -967,7 +969,7 @@ config FB_RIVA_BACKLIGHT config FB_I740 tristate "Intel740 support" - depends on FB && PCI + depends on FB && PCI && I2C select FB_MODE_HELPERS select FB_CFB_FILLRECT select FB_CFB_COPYAREA @@ -1021,6 +1023,7 @@ config FB_I810_GTF config FB_I810_I2C bool "Enable DDC Support" depends on FB_I810 && FB_I810_GTF + depends on I2C=y || I2C=FB_I810 select FB_DDC help Add DDC/I2C support for i810fb. This will allow the driver to get @@ -1076,6 +1079,7 @@ config FB_INTEL_DEBUG config FB_INTEL_I2C bool "DDC/I2C for Intel framebuffer support" depends on FB_INTEL + depends on I2C=y || I2C=FB_INTEL select FB_DDC default y help @@ -1155,6 +1159,7 @@ config FB_MATROX_G config FB_MATROX_I2C tristate "Matrox I2C support" depends on FB_MATROX + depends on I2C=y || I2C=FB_MATROX select FB_DDC help This drivers creates I2C buses which are needed for accessing the @@ -1220,6 +1225,7 @@ config FB_RADEON config FB_RADEON_I2C bool "DDC/I2C for ATI Radeon support" depends on FB_RADEON + depends on I2C=y || I2C=FB_RADEON select FB_DDC default y help @@ -1329,6 +1335,7 @@ config FB_S3 config FB_S3_DDC bool "DDC for S3 support" depends on FB_S3 + depends on I2C=y || I2C=FB_S3 select FB_DDC default y help @@ -1354,6 +1361,7 @@ config FB_SAVAGE config FB_SAVAGE_I2C bool "Enable DDC2 Support" depends on FB_SAVAGE + depends on I2C=y || I2C=FB_SAVAGE select FB_DDC help This enables I2C support for S3 Savage Chipsets. This is used @@ -1493,6 +1501,7 @@ config FB_3DFX_ACCEL config FB_3DFX_I2C bool "Enable DDC/I2C support" depends on FB_3DFX + depends on I2C=y || I2C=FB_3DFX select FB_DDC default y help @@ -1532,7 +1541,7 @@ config FB_VT8623 config FB_TRIDENT tristate "Trident/CyberXXX/CyberBlade support" - depends on FB && PCI + depends on FB && PCI && I2C select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT