drm/nouveau: headless mode by default if pci class != vga display
This is to prevent nouveau from taking over the console on headless boards such as Tesla. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
This commit is contained in:
parent
9430738d80
commit
e412e95a26
|
@ -290,6 +290,7 @@ nouveau_display_create(struct drm_device *dev)
|
||||||
struct nouveau_drm *drm = nouveau_drm(dev);
|
struct nouveau_drm *drm = nouveau_drm(dev);
|
||||||
struct nouveau_disp *pdisp = nouveau_disp(drm->device);
|
struct nouveau_disp *pdisp = nouveau_disp(drm->device);
|
||||||
struct nouveau_display *disp;
|
struct nouveau_display *disp;
|
||||||
|
u32 pclass = dev->pdev->class >> 8;
|
||||||
int ret, gen;
|
int ret, gen;
|
||||||
|
|
||||||
disp = drm->display = kzalloc(sizeof(*disp), GFP_KERNEL);
|
disp = drm->display = kzalloc(sizeof(*disp), GFP_KERNEL);
|
||||||
|
@ -360,7 +361,8 @@ nouveau_display_create(struct drm_device *dev)
|
||||||
drm_kms_helper_poll_init(dev);
|
drm_kms_helper_poll_init(dev);
|
||||||
drm_kms_helper_poll_disable(dev);
|
drm_kms_helper_poll_disable(dev);
|
||||||
|
|
||||||
if (nouveau_modeset == 1) {
|
if (nouveau_modeset == 1 ||
|
||||||
|
(nouveau_modeset < 0 && pclass == PCI_CLASS_DISPLAY_VGA)) {
|
||||||
if (nv_device(drm->device)->card_type < NV_50)
|
if (nv_device(drm->device)->card_type < NV_50)
|
||||||
ret = nv04_display_create(dev);
|
ret = nv04_display_create(dev);
|
||||||
else
|
else
|
||||||
|
|
|
@ -670,9 +670,7 @@ nouveau_drm_init(void)
|
||||||
#ifdef CONFIG_VGA_CONSOLE
|
#ifdef CONFIG_VGA_CONSOLE
|
||||||
if (vgacon_text_force())
|
if (vgacon_text_force())
|
||||||
nouveau_modeset = 0;
|
nouveau_modeset = 0;
|
||||||
else
|
|
||||||
#endif
|
#endif
|
||||||
nouveau_modeset = 1;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!nouveau_modeset)
|
if (!nouveau_modeset)
|
||||||
|
|
Loading…
Reference in a new issue