GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Verhindern, dass der Radeon-Treiber an bestimmte PCI-Geräte angeschlossen wird?

Ich hatte einige pci_stub -bezogene Zeilen in meinem rc.local aber dies war anscheinend zu spät im Boot-Prozess, um zu helfen, da es nach radeon ausgeführt wurde fing an, an Dingen herumzuspielen.

Ich habe die Dinge behoben, indem ich die pci_stub verschoben habe Kernel-Modul-Zeug in initramfs :

  1. lspci -nn | grep Cayman um die vendor:device zu finden Nummern (ganz am Ende der Zeile) für den 6950 und seinen HDMI-Port:

    02:00.0 VGA compatible controller [0300]: Advanced Micro Devices [AMD] nee ATI Cayman PRO [Radeon HD 6950] [1002:6719]
    02:00.1 Audio device [0403]: Advanced Micro Devices [AMD] nee ATI Cayman/Antilles HDMI Audio [Radeon HD 6900 Series] [1002:aa80]
    
  2. Öffnen Sie /etc/initramfs-tools/modules und fügen Sie eine neue Zeile hinzu:

    pci_stub ids=1002:6719,1002:aa80
    
  3. Erstellen Sie initramfs neu :

    sudo update-initramfs -u
    
  4. Starten Sie neu und beobachten Sie pci_stub radeon schlagen :

    dmesg | egrep "pci-stub|radeon"
    
    pci-stub: add 1002:6719 sub=FFFFFFFF:FFFFFFFF cls=00000000/00000000
    pci-stub 0000:02:00.0: claimed by stub
    pci-stub: add 1002:AA80 sub=FFFFFFFF:FFFFFFFF cls=00000000/00000000
    pci-stub 0000:02:00.1: claimed by stub
    [drm] radeon kernel modesetting enabled.
    radeon 0000:01:00.0: setting latency timer to 64
    radeon 0000:01:00.0: VRAM: 1024M 0x0000000000000000 - 0x000000003FFFFFFF (1024M used)
    radeon 0000:01:00.0: GTT: 512M 0x0000000040000000 - 0x000000005FFFFFFF
    
  5. Genießen Sie Bluescreen-freies VGA-Passthrough!


Mit der genpfault-Antwort als Referenz habe ich eine andere Antwort erstellt, die meiner Meinung nach einfacher ist.

Der erste Schritt ist derselbe wie oben:

Dann habe ich eine Datei namens /lib/modprobe.d/pci-stub.conf erstellt, mit den Argumenten, die ich gefunden habe:

options pci-stub ids=1002:9715,1002:970f

Dann habe ich eine Datei namens /lib/modprobe.d/drm.conf mit softdep:

erstellt
softdep drm pre: pci-stub

Auf diese Weise wird, wenn der Boot-Prozess versucht, drm zu laden, zuerst der pci-stub geladen, der die Hardware einer Grafikkarte reserviert und verhindert, dass drm an ein Gerät angeschlossen wird.

Später können Sie die Reservierung in rc.local, modprobe -r pci-stub, entfernen .

Optional können Sie ein weiteres Modul modprobe another-module laden für diese Karte.


Linux
  1. So schließen Sie bestimmte Verzeichnisse vom Kopieren in Linux aus

  2. Ein- und Ausgabe von einer bestimmten ausführbaren Datei abfangen?

  3. Wie kann man verhindern, dass `ls` die Ausgabe sortiert?

  4. Verhindern, dass Sigint untergeordnete Prozesse erreicht?

  5. Verhindern, dass 10.2 das Wolfram Mathematica-Verzeichnis unter Linux erstellt

Wie kann ich bestimmte Regeln aus iptables entfernen?

Rufen Sie gekoppelte Bluetooth-Geräte von der Konsole ab

Deaktivieren Sie bestimmte PCI-Geräte beim Booten

So verhindern Sie, dass ein Prozess Dateien schreibt

Wie kann ich Linux zu einem bestimmten Zeitpunkt vom Terminal aus herunterfahren?

Wie kann ich verhindern, dass mein WLAN-Treiber katatonisch wird?