diff options
Diffstat (limited to 'include/drm/drm_fb_helper.h')
| -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; | |||
| 36 | #include <drm/drm_crtc.h> | 36 | #include <drm/drm_crtc.h> |
| 37 | #include <drm/drm_device.h> | 37 | #include <drm/drm_device.h> |
| 38 | #include <linux/kgdb.h> | 38 | #include <linux/kgdb.h> |
| 39 | #include <linux/vgaarb.h> | ||
| 39 | 40 | ||
| 40 | enum mode_set_atomic { | 41 | enum mode_set_atomic { |
| 41 | LEAVE_ATOMIC_MODE_SET, | 42 | LEAVE_ATOMIC_MODE_SET, |
| @@ -642,11 +643,18 @@ drm_fb_helper_remove_conflicting_pci_framebuffers(struct pci_dev *pdev, | |||
| 642 | int resource_id, | 643 | int resource_id, |
| 643 | const char *name) | 644 | const char *name) |
| 644 | { | 645 | { |
| 646 | int ret = 0; | ||
| 647 | |||
| 648 | /* | ||
| 649 | * WARNING: Apparently we must kick fbdev drivers before vgacon, | ||
| 650 | * otherwise the vga fbdev driver falls over. | ||
| 651 | */ | ||
| 645 | #if IS_REACHABLE(CONFIG_FB) | 652 | #if IS_REACHABLE(CONFIG_FB) |
| 646 | return remove_conflicting_pci_framebuffers(pdev, resource_id, name); | 653 | ret = remove_conflicting_pci_framebuffers(pdev, resource_id, name); |
| 647 | #else | ||
| 648 | return 0; | ||
| 649 | #endif | 654 | #endif |
| 655 | if (ret == 0) | ||
| 656 | ret = vga_remove_vgacon(pdev); | ||
| 657 | return ret; | ||
| 650 | } | 658 | } |
| 651 | 659 | ||
| 652 | #endif | 660 | #endif |
