Message ID | 1401802736-32065-1-git-send-email-daniel.vetter@ffwll.ch (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Tue, Jun 03, 2014 at 03:38:56PM +0200, Daniel Vetter wrote: > The drm core shouldn't depend upon any helpers, and we make sure this > doesn't accidentally happen by moving them into the helper-only > drm_kms_helper.ko module. > > Cc: Matt Roper <matthew.d.roper@intel.com> > Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch> Are there any KMS drivers that don't 'select DRM_KMS_HELPER' in their Kconfig today? From a quick grep + cscope it looks like radeon and vmwgfx don't select the helper library. Since drm_crtc_init() is part of the helper library now (since it creates a helper-created primary plane), I think those drivers either need to select the helper in their Kconfig to get a proper build, or they need to be updated to provide their own primary planes and call drm_crtc_init_with_planes(), right? Matt > --- > drivers/gpu/drm/Makefile | 6 +++--- > 1 file changed, 3 insertions(+), 3 deletions(-) > > diff --git a/drivers/gpu/drm/Makefile b/drivers/gpu/drm/Makefile > index 48e38ba22783..863db8415c22 100644 > --- a/drivers/gpu/drm/Makefile > +++ b/drivers/gpu/drm/Makefile > @@ -13,8 +13,7 @@ drm-y := drm_auth.o drm_buffer.o drm_bufs.o drm_cache.o \ > drm_crtc.o drm_modes.o drm_edid.o \ > drm_info.o drm_debugfs.o drm_encoder_slave.o \ > drm_trace_points.o drm_global.o drm_prime.o \ > - drm_rect.o drm_vma_manager.o drm_flip_work.o \ > - drm_plane_helper.o > + drm_rect.o drm_vma_manager.o drm_flip_work.o > > drm-$(CONFIG_COMPAT) += drm_ioc32.o > drm-$(CONFIG_DRM_GEM_CMA_HELPER) += drm_gem_cma_helper.o > @@ -23,7 +22,8 @@ drm-$(CONFIG_DRM_PANEL) += drm_panel.o > > drm-usb-y := drm_usb.o > > -drm_kms_helper-y := drm_crtc_helper.o drm_dp_helper.o drm_probe_helper.o > +drm_kms_helper-y := drm_crtc_helper.o drm_dp_helper.o drm_probe_helper.o \ > + drm_plane_helper.o > drm_kms_helper-$(CONFIG_DRM_LOAD_EDID_FIRMWARE) += drm_edid_load.o > drm_kms_helper-$(CONFIG_DRM_KMS_FB_HELPER) += drm_fb_helper.o > drm_kms_helper-$(CONFIG_DRM_KMS_CMA_HELPER) += drm_fb_cma_helper.o > -- > 2.0.0 >
On Tue, Jun 3, 2014 at 4:44 PM, Matt Roper <matthew.d.roper@intel.com> wrote: > On Tue, Jun 03, 2014 at 03:38:56PM +0200, Daniel Vetter wrote: >> The drm core shouldn't depend upon any helpers, and we make sure this >> doesn't accidentally happen by moving them into the helper-only >> drm_kms_helper.ko module. >> >> Cc: Matt Roper <matthew.d.roper@intel.com> >> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch> > > Are there any KMS drivers that don't 'select DRM_KMS_HELPER' in their > Kconfig today? From a quick grep + cscope it looks like radeon and > vmwgfx don't select the helper library. > > Since drm_crtc_init() is part of the helper library now (since it > creates a helper-created primary plane), I think those drivers either > need to select the helper in their Kconfig to get a proper build, or > they need to be updated to provide their own primary planes and call > drm_crtc_init_with_planes(), right? Radeon definitely uses the crtc helpers, so should have the dependency somewhere. vmwgfx might indeed be broken now a bit. I'll wait for the 0-day kernel test build farm to confirm that ;-) -Daniel
On Tue, Jun 03, 2014 at 04:49:25PM +0200, Daniel Vetter wrote: > On Tue, Jun 3, 2014 at 4:44 PM, Matt Roper <matthew.d.roper@intel.com> wrote: > > On Tue, Jun 03, 2014 at 03:38:56PM +0200, Daniel Vetter wrote: > >> The drm core shouldn't depend upon any helpers, and we make sure this > >> doesn't accidentally happen by moving them into the helper-only > >> drm_kms_helper.ko module. > >> > >> Cc: Matt Roper <matthew.d.roper@intel.com> > >> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch> > > > > Are there any KMS drivers that don't 'select DRM_KMS_HELPER' in their > > Kconfig today? From a quick grep + cscope it looks like radeon and > > vmwgfx don't select the helper library. > > > > Since drm_crtc_init() is part of the helper library now (since it > > creates a helper-created primary plane), I think those drivers either > > need to select the helper in their Kconfig to get a proper build, or > > they need to be updated to provide their own primary planes and call > > drm_crtc_init_with_planes(), right? > > Radeon definitely uses the crtc helpers, so should have the dependency > somewhere. vmwgfx might indeed be broken now a bit. I'll wait for the > 0-day kernel test build farm to confirm that ;-) > -Daniel Yeah, you're right; now that I look closer radeon pulls it in from the main drm directory Kconfig and only has ums stuff in its driver directory Kconfig. But I think vmwgfx probably still needs to select the helper library. If vmwgfx gets a kconfig update to pull in the helper library, then this is Reviewed-by: Matt Roper <matthew.d.roper@intel.com> Matt > -- > Daniel Vetter > Software Engineer, Intel Corporation > +41 (0) 79 365 57 48 - http://blog.ffwll.ch
diff --git a/drivers/gpu/drm/Makefile b/drivers/gpu/drm/Makefile index 48e38ba22783..863db8415c22 100644 --- a/drivers/gpu/drm/Makefile +++ b/drivers/gpu/drm/Makefile @@ -13,8 +13,7 @@ drm-y := drm_auth.o drm_buffer.o drm_bufs.o drm_cache.o \ drm_crtc.o drm_modes.o drm_edid.o \ drm_info.o drm_debugfs.o drm_encoder_slave.o \ drm_trace_points.o drm_global.o drm_prime.o \ - drm_rect.o drm_vma_manager.o drm_flip_work.o \ - drm_plane_helper.o + drm_rect.o drm_vma_manager.o drm_flip_work.o drm-$(CONFIG_COMPAT) += drm_ioc32.o drm-$(CONFIG_DRM_GEM_CMA_HELPER) += drm_gem_cma_helper.o @@ -23,7 +22,8 @@ drm-$(CONFIG_DRM_PANEL) += drm_panel.o drm-usb-y := drm_usb.o -drm_kms_helper-y := drm_crtc_helper.o drm_dp_helper.o drm_probe_helper.o +drm_kms_helper-y := drm_crtc_helper.o drm_dp_helper.o drm_probe_helper.o \ + drm_plane_helper.o drm_kms_helper-$(CONFIG_DRM_LOAD_EDID_FIRMWARE) += drm_edid_load.o drm_kms_helper-$(CONFIG_DRM_KMS_FB_HELPER) += drm_fb_helper.o drm_kms_helper-$(CONFIG_DRM_KMS_CMA_HELPER) += drm_fb_cma_helper.o
The drm core shouldn't depend upon any helpers, and we make sure this doesn't accidentally happen by moving them into the helper-only drm_kms_helper.ko module. Cc: Matt Roper <matthew.d.roper@intel.com> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch> --- drivers/gpu/drm/Makefile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-)