aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorRob Clark <robdclark@gmail.com>2016-01-25 18:06:48 -0500
committerAlex Deucher <alexander.deucher@amd.com>2016-01-26 00:35:49 -0500
commitf95429eccc570dc45d589c327bfcfddcdc3e8228 (patch)
tree5c61dd84f3cc6a1465ac0b983dd49a1868d62f55 /drivers
parent186bac815227a4c26a0ad2f18c7450015d93ed0a (diff)
drm/radeon: only init fbdev if we have connectors
This fixes an issue that was noticed on an optimus/prime laptop with a kernel that was old enough to not support the integrated intel gfx (which was driving all the outputs), but did have support for the discrete radeon gpu. The end result was not falling back to VESA and leaving the user with a black screen. (Plus it is kind of silly to create an framebuffer device if there are no outputs hooked up to the gpu.) Signed-off-by: Rob Clark <robdclark@gmail.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/gpu/drm/radeon/radeon_display.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/gpu/drm/radeon/radeon_display.c b/drivers/gpu/drm/radeon/radeon_display.c
index b3bb92368ae0..298ea1c453c3 100644
--- a/drivers/gpu/drm/radeon/radeon_display.c
+++ b/drivers/gpu/drm/radeon/radeon_display.c
@@ -1670,8 +1670,10 @@ int radeon_modeset_init(struct radeon_device *rdev)
1670 /* setup afmt */ 1670 /* setup afmt */
1671 radeon_afmt_init(rdev); 1671 radeon_afmt_init(rdev);
1672 1672
1673 radeon_fbdev_init(rdev); 1673 if (!list_empty(&rdev->ddev->mode_config.connector_list)) {
1674 drm_kms_helper_poll_init(rdev->ddev); 1674 radeon_fbdev_init(rdev);
1675 drm_kms_helper_poll_init(rdev->ddev);
1676 }
1675 1677
1676 /* do pm late init */ 1678 /* do pm late init */
1677 ret = radeon_pm_late_init(rdev); 1679 ret = radeon_pm_late_init(rdev);