Re: [PATCH] drm/tegra: Fix Kconfig dependencies

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Jan 06, 2014 at 08:20:55AM -0800, Guenter Roeck wrote:
> On Mon, Jan 06, 2014 at 04:39:47PM +0100, Thierry Reding wrote:
> > On Sun, Jan 05, 2014 at 10:22:51AM -0800, Guenter Roeck wrote:
> > > arm:allmodconfig fails to build with several undefined drm and host1x symbols.
> > > 
> > > drivers/gpu/drm/tegra/bus.c:52: undefined reference to `drm_dev_alloc'
> > > drivers/gpu/drm/tegra/bus.c:56: undefined reference to `drm_dev_register'
> > > drivers/gpu/drm/tegra/bus.c:67: undefined reference to `drm_dev_free'
> > > drivers/gpu/drm/tegra/bus.c:75: undefined reference to `drm_put_dev'
> > > drivers/gpu/drm/tegra/drm.c:445: undefined reference to `host1x_syncpt_get_base'
> > > drivers/gpu/drm/tegra/drm.c:449: undefined reference to `host1x_syncpt_base_id'
> > > 
> > > and so on.
> > > 
> > > This is caused by DRM=m but DRM_TEGRA=y. DRM_TEGRA is bool while DRM is
> > > tristate. DRM_TEGRA can not be set to tristate because it depends on unexported
> > > host1x symbols (and possibly others). Fix by updating DRM_TEGRA dependency.
> > > 
> > > Also, the DRM_TEGRA help text states that it can be built as module.
> > > Remove that text since it is not (or no longer) correct.
> > > 
> > > Signed-off-by: Guenter Roeck <linux@xxxxxxxxxxxx>
> > > ---
> > >  drivers/gpu/drm/tegra/Kconfig |    5 +----
> > >  1 file changed, 1 insertion(+), 4 deletions(-)
> > 
> > Hi Guenter,
> > 
> > I think this should be fixed in latest next, where it is now possible to
> > build the Tegra DRM driver as a module. All needed host1x symbols are
> > exported as well.
> > 
> > One thing that strikes me as odd, though, is that I've always thought
> > Kconfig would warn if a symbol selected as =y depended on a symbol
> > selected as =m, precisely because of what you describe above. menuconfig
> > complains about it pretty loudly as well.
> > 
> > Oh, but I see that if I change DRM_TEGRA back to be bool, then Kconfig
> > doesn't complain anymore, even if DRM_TEGRA=y and DRM=m. Should that
> > perhaps be considered a bug?
> > 
> No idea. All I know is that it causes a build failure ;-).
> 
> Anyway, are there plans to push the patches changing DRM_TEGRA to tristate
> into 3.13 ? This is one of the reasons for arm:allmodconfig to fail. If there
> are no plans to push the patches into 3.13, I think it would make sense
> to send my patch to Linus and apply the tristate changes on top of it.

The patches to change DRM_TEGRA to tristate are part of what is queued
for 3.14. While I agree that having allmodconfig working is a worthwhile
goal in itself for build testing, I'm not sure it warrants a patch this
late in the release cycle that will cause conflicts during the merge
window.

It also seems like there are other issues that prevent allmodconfig to
build successfully on ARM not all of them being as easy to fix as this
one.

Thierry

Attachment: pgpYyLfFSRFy7.pgp
Description: PGP signature


[Index of Archives]     [ARM Kernel]     [Linux ARM]     [Linux ARM MSM]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux