Removing the build-time dependency on DRM_KMS_FB_HELPER means
we can now build with CONFIG_FB disabled or as a loadable module,
leading to a link error:
ERROR: "remove_conflicting_framebuffers"
[drivers/gpu/drm/virtio/virtio-gpu.ko] undefined!
There is no need to call remove_conflicting_framebuffers() if
CONFIG_FB is disabled, or if the virtio-gpu driver is built-in
and CONFIG_FB=m, as there won't be any prior consoles that
are registered at that point.
This adds a compile-time check in the driver to ensure we only
attempt to call that function if either CONFIG_FB=y or
both subsystems are configured as loadable modules.
Signed-off-by: Arnd Bergmann <arnd at arndb.de>
Fixes: 0b6320dfdfea ("drm/virtio: make fbdev support really optional")
---
drivers/gpu/drm/virtio/virtgpu_drm_bus.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/virtio/virtgpu_drm_bus.c
b/drivers/gpu/drm/virtio/virtgpu_drm_bus.c
index 7f0e93f87a55..2087569ae8d7 100644
--- a/drivers/gpu/drm/virtio/virtgpu_drm_bus.c
+++ b/drivers/gpu/drm/virtio/virtgpu_drm_bus.c
@@ -65,7 +65,7 @@ int drm_virtio_init(struct drm_driver *driver, struct
virtio_device *vdev)
DRM_INFO("pci: %s detected\n",
vga ? "virtio-vga" : "virtio-gpu-pci");
dev->pdev = pdev;
- if (vga)
+ if (IS_REACHABLE(CONFIG_FB) && vga)
virtio_pci_kick_out_firmware_fb(pdev);
}
--
2.9.0
On Tue, Aug 02, 2016 at 12:09:15PM +0200, Arnd Bergmann wrote:> Removing the build-time dependency on DRM_KMS_FB_HELPER means > we can now build with CONFIG_FB disabled or as a loadable module, > leading to a link error: > > ERROR: "remove_conflicting_framebuffers" [drivers/gpu/drm/virtio/virtio-gpu.ko] undefined! > > There is no need to call remove_conflicting_framebuffers() if > CONFIG_FB is disabled, or if the virtio-gpu driver is built-in > and CONFIG_FB=m, as there won't be any prior consoles that > are registered at that point. > > This adds a compile-time check in the driver to ensure we only > attempt to call that function if either CONFIG_FB=y or > both subsystems are configured as loadable modules. > > Signed-off-by: Arnd Bergmann <arnd at arndb.de> > Fixes: 0b6320dfdfea ("drm/virtio: make fbdev support really optional")Reviewed-by: Daniel Vetter <daniel.vetter at ffwll.ch> Dave, can you pls pick this one up directly? -Daniel> --- > drivers/gpu/drm/virtio/virtgpu_drm_bus.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/virtio/virtgpu_drm_bus.c b/drivers/gpu/drm/virtio/virtgpu_drm_bus.c > index 7f0e93f87a55..2087569ae8d7 100644 > --- a/drivers/gpu/drm/virtio/virtgpu_drm_bus.c > +++ b/drivers/gpu/drm/virtio/virtgpu_drm_bus.c > @@ -65,7 +65,7 @@ int drm_virtio_init(struct drm_driver *driver, struct virtio_device *vdev) > DRM_INFO("pci: %s detected\n", > vga ? "virtio-vga" : "virtio-gpu-pci"); > dev->pdev = pdev; > - if (vga) > + if (IS_REACHABLE(CONFIG_FB) && vga) > virtio_pci_kick_out_firmware_fb(pdev); > } > > -- > 2.9.0 >-- Daniel Vetter Software Engineer, Intel Corporation http://blog.ffwll.ch
Reasonably Related Threads
- [PATCH] drm/virtio: fix building without CONFIG_FBDEV
- [PATCH 00/13] remove_conflicting_framebuffers() cleanup
- [PATCH 00/13] remove_conflicting_framebuffers() cleanup
- [PATCH v3 00/13] remove_conflicting_framebuffers() cleanup
- [PATCH v3 00/13] remove_conflicting_framebuffers() cleanup