On Wed, Oct 27, 2021 at 03:27:12PM +0200, Arnd Bergmann wrote: > From: Arnd Bergmann <arnd@xxxxxxxx> > > 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@xxxxxxxxxxxxxxx> > Signed-off-by: Arnd Bergmann <arnd@xxxxxxxx> > --- > 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