當我啟動核心時,我有 nomodeset,因為我想在會話中在 nouveau 和 nvidia 專有驅動程式之間切換。
然而,nouveau 不會加載,抱怨 kms 未啟用(xorg.log 摘錄):
(II) NOUVEAU driver Date: Tue Mar 16 13:08:37 2010 +1000
(II) NOUVEAU driver for NVIDIA chipset families :
RIVA TNT (NV04)
RIVA TNT2 (NV05)
GeForce 256 (NV10)
GeForce 2 (NV11, NV15)
GeForce 4MX (NV17, NV18)
GeForce 3 (NV20)
GeForce 4Ti (NV25, NV28)
GeForce FX (NV3x)
GeForce 6 (NV4x)
GeForce 7 (G7x)
GeForce 8 (G8x)
(II) Primary Device is: PCI 01@00:00:0
drmOpenDevice: node name is /dev/dri/card0
drmOpenDevice: open result is 7, (OK)
drmOpenByBusid: Searching for BusID pci:0000:01:00.0
drmOpenDevice: node name is /dev/dri/card0
drmOpenDevice: open result is 7, (OK)
drmOpenByBusid: drmOpenMinor returns 7
drmOpenByBusid: drmGetBusid reports pci:0000:01:00.0
(II) [drm] nouveau interface version: 0.0.15
(EE) [drm] KMS not enabled
(EE) No devices detected.
這是 lsmod:
$ lsmod | grep nouv
nouveau 353208 0
ttm 40978 1 nouveau
drm_kms_helper 20369 1 nouveau
drm 143329 3 nouveau,ttm,drm_kms_helper
i2c_algo_bit 4225 1 nouveau
i2c_core 15819 5 nouveau,drm_kms_helper,drm,i2c_i801,i2c_algo_bit
button 4650 1 nouveau
我是否遺漏了什麼,或者沒有 KMS 就不可能擁有 nouveau 嗎?我做了一些搜索,我發現的所有內容都指向我在核心中啟用 kms。
Linux zen 2.6.32-5-xen-amd64 #1 SMP Tue Jun 14 12:46:30 UTC 2011 x86_64 GNU/Linux
答案1
https://wiki.archlinux.org/index.php/Nouveau#KMS
Nouveau 驅動程式需要核心模式設定 (KMS)。有關詳細信息,請參閱內核模式設定頁面。
它來自 Arch wiki,但適用於所有系統。如果沒有 KMS,則無法使用 nouveau。
答案2
nouveau 驅動程式需要 KMS 才能運行,因此在 grub 中的核心引導行上設定 nomodeset 時無法使用它。
啟動後刪除驅動程式的正確方法是斷開幀緩衝區與驅動程式的連接,如下所述: