diff options
author | Gerd Hoffmann <kraxel@redhat.com> | 2019-03-01 12:25:00 +0300 |
---|---|---|
committer | Gerd Hoffmann <kraxel@redhat.com> | 2019-03-07 12:34:38 +0300 |
commit | 1c74ca7a1a9ae6ce71032c997a586f061a0029f8 (patch) | |
tree | 159afe0f699fe6a4ea1d2b3a295219606c99be1e /include/drm | |
parent | c6b38fbbde91ee7b072febe4b83022e4850f934f (diff) | |
download | linux-1c74ca7a1a9ae6ce71032c997a586f061a0029f8.tar.xz |
drm/fb-helper: call vga_remove_vgacon automatically.
Add vga_remove_vgacon() call to
drm_fb_helper_remove_conflicting_pci_framebuffers().
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link: http://patchwork.freedesktop.org/patch/msgid/20190301092502.30948-3-kraxel@redhat.com
Diffstat (limited to 'include/drm')
-rw-r--r-- | include/drm/drm_fb_helper.h | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/include/drm/drm_fb_helper.h b/include/drm/drm_fb_helper.h index bb9acea61369..286d58efed5d 100644 --- a/include/drm/drm_fb_helper.h +++ b/include/drm/drm_fb_helper.h @@ -36,6 +36,7 @@ struct drm_fb_helper; #include <drm/drm_crtc.h> #include <drm/drm_device.h> #include <linux/kgdb.h> +#include <linux/vgaarb.h> enum mode_set_atomic { LEAVE_ATOMIC_MODE_SET, @@ -642,11 +643,18 @@ drm_fb_helper_remove_conflicting_pci_framebuffers(struct pci_dev *pdev, int resource_id, const char *name) { + int ret = 0; + + /* + * WARNING: Apparently we must kick fbdev drivers before vgacon, + * otherwise the vga fbdev driver falls over. + */ #if IS_REACHABLE(CONFIG_FB) - return remove_conflicting_pci_framebuffers(pdev, resource_id, name); -#else - return 0; + ret = remove_conflicting_pci_framebuffers(pdev, resource_id, name); #endif + if (ret == 0) + ret = vga_remove_vgacon(pdev); + return ret; } #endif |