site  contact  subhomenews

The mysterious nomodeset kernel option

October 12, 2021 — BarryK

I posted about Xorg not working with my "new" Nvidia GT218 card:

https://bkhome.org/news/202110/gt210-nvidia-card-for-old-workhorse-pc.html

And yesterday was able to get to the desktop with Fatdog64 811:

https://bkhome.org/news/202110/fatdog64-811-works-real-nice.html

Today, experimenting with booting EasyOS 3.0, can get to the desktop. Here are my notes:

normal bootup, bios legacy mode, stop at commandline.

TEST ONE
--------
Legacy bootup:
# cat /proc/cmdline
BOOT_IMAGE=vmlinuz initrd=initrd rw qfix=nox vga=792 nomodeset

# cat /etc/modprobe.d/nouveau.conf
options nouveau modeset=1

# lsmod | grep '^nouveau'
nouveau 1777664 2

# busybox lspci -m -k | grep 'Class 0300'
01:00.0 "Class 0300" "10de" "0a65" "0000" "0000" "nouveau"

according to lsmod, 'nouveau' kernel module is loaded, as
confirmed above.
Xorg works with 'nouveau' xorg driver.

TEST TWO
--------
Legacy bootup:
# cat /proc/cmdline
BOOT_IMAGE=vmlinuz initrd=initrd rw qfix=nox vga=792 nouveau.modeset=0
OR, THIS HAS SAME EFFECT:
# cat /etc/modprobe.d/nouveau.conf
options nouveau modeset=0

# lsmod | grep '^nouveau'
nouveau 1777664 0

# busybox lspci -m -k | grep 'Class 0300'
01:00.0 "Class 0300" "10de" "0a65" "0000" "0000"

according to lsmod, 'nouveau' kernel module is loaded, however,
lspci does not show the association.
the xorg 'nouveau' driver does not work, 'nv' and 'vesa' do.

My understanding, up until now, is that the kernel commandline parameter "nomodeset" is the same as "nouveau.modeset=0", assuming that there are no other GPUs to interfere.

But, that is not so. Legacy bootup, with "nomodeset", Xorg works and is using the 'nouveau' Xorg driver. With "nouveau.modeset=0", although the 'nouveau' kernel module is loaded, it is disabled, lspci does not recognize it, nor does Xorg work -- Xorg does work with the 'nv' and 'vesa' Xorg drivers.

EDIT 2021-10-13:
Interesting, Xorg works with this, legacy bootup:

# cat /etc/modprobe.d/nouveau.conf 
options nouveau modeset=1
options nouveau nofbaccel=1
options nouveau noaccel=1

...but, only if boot with legacy-BIOS, with normal UEFI-BIOS bootup still get the black screen.

For UEFI bootup, get Xorg desktop if have "nomodeset" kernel parameter and "options nouveau modeset=0", and Xorg uses the 'nv' driver.    

Tags: easy