Subject: Re: linux-next: build warning after merge of the drm-panel tree

From: Thierry Reding <[email-masked]>
Date: Tue, 31 Mar 2015 14:16:03 +0200

On Tue, Mar 31, 2015 at 11:03:55PM +1100, Stephen Rothwell wrote:
> Hi all,
> 
> On Wed, 25 Mar 2015 17:20:56 +1100 Stephen Rothwell <[email-masked]> wrote:
> >
> > After merging the drm-panel tree, today's linux-next build (powerpc
> > ppc64_defconfig) produced this warning:
> > 
> > drivers/video/fbdev/Kconfig:5:error: recursive dependency detected!
> > drivers/video/fbdev/Kconfig:5:	symbol FB is selected by DRM_KMS_FB_HELPER
> > drivers/gpu/drm/Kconfig:34:	symbol DRM_KMS_FB_HELPER depends on DRM_KMS_HELPER
> > drivers/gpu/drm/Kconfig:28:	symbol DRM_KMS_HELPER is selected by DRM_PTN3460
> > drivers/gpu/drm/bridge/Kconfig:6:	symbol DRM_PTN3460 depends on GPIOLIB
> > drivers/gpio/Kconfig:34:	symbol GPIOLIB is selected by ARCH_REQUIRE_GPIOLIB
> > drivers/gpio/Kconfig:23:	symbol ARCH_REQUIRE_GPIOLIB is selected by MCU_MPC8349EMITX
> > arch/powerpc/platforms/Kconfig:350:	symbol MCU_MPC8349EMITX depends on I2C
> > drivers/i2c/Kconfig:7:	symbol I2C is selected by FB_DDC
> > drivers/video/fbdev/Kconfig:59:	symbol FB_DDC is selected by FB_CYBER2000_DDC
> > drivers/video/fbdev/Kconfig:374:	symbol FB_CYBER2000_DDC depends on FB_CYBER2000
> > drivers/video/fbdev/Kconfig:362:	symbol FB_CYBER2000 depends on FB
> > 
> > Introduced by commit 6a43766f6ef3 ("drm/bridge: ps8622 and ptn3460
> > depend on gpiolib").
> 
> This is still going on ...

I tried turning the 'select I2C' from FB_DDC into a "depends on I2C",
which seems like the more appropriate type of dependency, but that
causes a slew of new warnings because now all of a sudden some symbols
have unmet direct dependencies.

This is really quite messy. The only solution I can think of would be to
provide stubs for all of the GPIO API so that the dependency can be
dropped again. That's a little extreme and shouldn't be necessary, but I
don't see any other way to untangle this mess, I'm afraid.

Arnd, any ideas?

Thierry