[PATCH] drm/tegra: Fix Kconfig dependencies

Guenter Roeck linux at roeck-us.net
Mon Jan 6 08:20:55 PST 2014


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 at roeck-us.net>
> > ---
> >  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.

Thanks,
Guenter


More information about the dri-devel mailing list