Je ne parviens pas à charger amdgpu
en tant que pilote. Au lieu de cela, il charge toujours radeon
.
Installer:
Ubuntu 18.04.1 LTS
i7-5830k
2x R9 390X
Ceci est un guide et un résumé de test pour permettant à amdgpu (au lieu de radeon ) sous Ubuntu 18.04. 1 ayant un R9 390X installé et essayant divers noyaux.
Après avoir lu this et lu/visionné Guide Level1Techs et beaucoup d'autres, j'ai finalement réussi à faire charger amdgpu au lieu de radeon. Les étapes suivantes montrent comment accomplir cela.
Problème
Je veux jouer à des jeux sur Linux via DXVK en utilisant un pilote open source (pas amdgpu-pro). Comme DXVK ne fonctionne qu'avec le pilote amdgpu, je devais me débarrasser d’Ubuntu tout le temps de chargement de la radeon.
Ma configuration
Ubuntu 18.04.1 LTS
i7-5830k
R9 390X (en fait 2, mais ne devrait pas importer)
@ NOT-TESTED: Il devrait également fonctionner avec les pilotes officiels livrés avec l'installation Ubuntu 18.04.1. Si vous ne souhaitez pas exécuter de pilotes non officiels, ignorez cette étape.
@ REMARQUE: Téléchargez les nouveaux pilotes non officiels de PPA pour obtenir de meilleures performances en DXVK. Peut être instable.
Installez le dernier pilote à partir de https://launchpad.net/~oibaf/+archive/ubuntu/graphics-drivers :
_Sudo add-apt-repository ppa:oibaf/graphics-drivers
Sudo apt update && Sudo apt dist-upgrade
Sudo apt install mesa-vulkan-drivers mesa-vulkan-drivers:i386
_
@ ERROR dépendances non satisfaites: installez d'abord les pilotes d'origine:
_Sudo add-apt-repository --remove ppa:oibaf/graphics-drivers
Sudo apt install mesa-vulkan-drivers mesa-vulkan-drivers:i386
_
@ ATTENTION: Assurez-vous de ne pas disposer d'un autre PPA de pilote graphique tel que ppa: paulo-miguel-dias/mesa ajoutée. Vous pouvez vérifier ses pilotes Mesa: STABLE ou UNSTABLE
@ ERREUR erreur générale due à un PPA: Purger le ou les PPA (s) du pilote graphique pour revenir à l'original pilotes et nettoyage:
_Sudo apt install ppa-purge && aptitude
Sudo ppa-purge ppa:oibaf/graphics-drivers
Sudo apt autoremove && Sudo apt autoclean
_
Vous pouvez recommencer.
Créez un fichier de configuration xorg qui sera chargé automatiquement au démarrage:
_/usr/share/X11/xorg.conf.d/<nr-name>.conf
_ par exemple _42-amdgpu.conf
_
_#/usr/share/X11/xorg.conf.d/42-amdgpu.conf
Section "Device"
Identifier "AMDGPU"
Driver "amdgpu"
Option "AccelMethod" "glamor"
Option "DRI" "3"
EndSection
_
@ NOT-TESTED: Ajoutez ceci au fichier _10-amdgpu.conf
_ déjà existant. Peut être écrasé par l’installation du pilote.
@ OPTION: Vous pouvez également ajouter ceci à _/etc/X11/xorg.conf
_ ou _/etc/xorg.conf
_.
Créez un fichier de liste noire avec le module qui sera sur la liste noire:
_/etc/modprobe.d/<name>.conf
_ par exemple _blacklist-radeon.conf
_
_#/etc/modprobe.d/blacklist-radeon.conf
blacklist radeon
_
@ OPTION: Il est possible d'utiliser des fichiers _blacklist.conf
_ déjà existants en ajoutant simplement _blacklist radeon
_ quelque part.
Ajoutez ou modifiez ces paramètres dans la configuration grub _/etc/default/grub
_:
_#/etc/default/grub
...
GRUB_GFXMODE=1920x1080x32
GRUB_CMDLINE_LINUX_DEFAULT="radeon.si_support=0 radeon.cik_support=0 amdgpu.si_support=1 amdgpu.cik_support=1 amdgpu.dc=1 amdgpu.dpm=1 amdgpu.modeset=1"
...
_
@ DID-NOT-WORK: J'ai copié le fichier _40_custom
_ dans _/etc/grub.d/
_. Cela ne fonctionnait pas lorsque je l'ai placé dans _40_amdgpu
_ au lieu de _/etc/default/grub
_. (voir le _/etc/grub.d/README
_ pour plus d'informations)
Laissez les modifications ci-dessus prendre effet:
_Sudo update-grub2 && Sudo update-initramfs -u -k all
_
et
_reboot
_
Pour vérifier que le pilote amdgpu est chargé et est utilisé, exécutez une ou plusieurs des commandes suivantes:
_lsmod | egrep 'Used|amdgpu'
Sudo lspci -v | grep amdgpu -B 19
Sudo lshw -c video | grep amdgpu -B 10 -A 1
_
Exécutez une application de test Vulkan:
_Sudo apt install vulkan-utils
_
et
_vulkan-smoketest
_
J'ai essayé de démarrer divers noyaux après les étapes ci-dessus.
Pour installer d'autres noyaux, j'ai utilisé l'utilitaire de mise à jour du noyau Ubuntu :
_Sudo apt-add-repository -y ppa:teejee2008/ppa
Sudo apt update
Sudo apt install ukuu
_
Voici le résumé de mes tests:
_4.15.0
_ _WORKING!
_ Ubuntu 18.04.1 noyau par défaut de LTS
_4.17.5
_ _WORKING!
_ noyau utilisé dans cette vidéo
_4.18.0
_ _WORKAROUND!
_ noyau par défaut actuel d'Ubuntu 19.10 Disco (2018-11-19)
_4.18.15
_ _WORKAROUND!
_ dernier noyau 4.18.x avec modifications apportées à amdgpu
_4.18.19
_ _WORKAROUND!
_ dernier noyau 4.18.x
_4.19
_ _FAILURE!
_ écran noir ou dmesg:
_[drm:dm_pp_get_static_clocks [amdgpu]] *ERROR* DM_PPLIB: invalid powerlevel state: 0!
_
_4.19.1
_ _FAILURE!
_ écran noir ou dmesg:
_drm:dm_pp_get_static_clocks [amdgpu]] *ERROR* DM_PPLIB: invalid powerlevel state: 0!
drm:amdgpu_vce_ring_test_ring [amdgpu]] *ERROR* amdgpu: ring 12 test failed
drm:amdgpu_device_init.cold.28 [amdgpu]] *ERROR* hw_init of IP block <vce_v2_0> failed -110
amdgpu 0000:05:00.0: amdgpu_device_ip_init failed
amdgpu 0000:05:00.0: Fatal error during GPU init
_
_4.19.2
_ _FAILURE!
_ dmesg:
_Direct firmware load for amdgpu/hawaii_mc.bin failed with error -2
_
@ NOTE: Je n'ai pas encore enquêté sur les erreurs des noyaux _4.19.x
_.
4.18-4.18.19
Pour que les noyaux _4.18
_ fonctionnent:
Sauvegardez vos fichiers de firmware actuels:
_Sudo cp -r /lib/firmware /lib/firmware-$(uname -r)
_
Téléchargez le firmware linux d’Ubuntu 19.10 Disco (la version actuelle de Disco utilise le noyau 4.18.0 par défaut) à partir de https://packages.ubuntu.com/en/disco/linux-firmware ou:
_wget http://archive.ubuntu.com/ubuntu/pool/main/l/linux-firmware/linux-firmware_1.176.tar.gz
_
Extraire des fichiers:
_tar -xvzf linux-firmware_1.76.tar.gz
_
Allez dans le nouveau répertoire de firmware:
_cd linux-firmware
_
Installez le firmware:
_Sudo make install
_
Redémarrage
_reboot
_
Voici un résumé de mes tests:
4.18.16
WORKING!
Mint 19.1 avec tous les paramètres de noyau mentionnés et Radeon sur liste noire
4.18.17 - 4.18.20
BLACKSCREEN!
La mise à jour du micrologiciel n'a pas résolu le problème.
4.18.17 - 4.18.20
NOT TESTED!
omettre le paramètre du noyau dpm
4.20.12
WORKING!
paramètre de noyau dpm omis
5.00.00
WORKING!
paramètre de noyau dpm omis
warning: many gpus have a maximum temperature of 95°C / 203°F
exceeding that can damage your gpu, look at your config twice!
écrire un service avec le nom de fichier: amdgpu-fancontrol.service
[Unit]
Description=amdgpu-fancontrol
[Service]
Type=simple
ExecStart=/usr/bin/amdgpu-fancontrol
[Install]
WantedBy=multi-user.target
mettre le service dans
/etc/systemd/system
prenez le script de github: link
changer les paramètres du script si vous voulez
4.1. changer tous les nombres de zéro à un si vous avez également graphique intégré.
/sys/class/drm/card1/device/hwmon/hwmon1/
4.2. optionnel: change le mappage temp/tours
TEMPS=( 55000 65000 80000 90000 )
PWMS=( 10 70 153 255 )
4.3 vérifier le répertoire pour s'assurer qu'il existe
placez le script dans/usr/bin/amdgpu-fancontrol
activer le service
Sudo systemctl daemon-reload
Sudo systemctl enable amdgpu-fancontrol.service
Sudo systemctl start amdgpu-fancontrol.service