problème démarrage pc

voilà ce que ça donne

root@kali:~# dmesg | grep firmware [ 3.666981] platform microcode: firmware: direct-loading firmware amd-ucode/microcode_amd.bin [ 8.312570] radeon 0000:00:01.0: firmware: direct-loading firmware radeon/SUMO_pfp.bin [ 8.489656] radeon 0000:00:01.0: firmware: direct-loading firmware radeon/SUMO_me.bin [ 8.509988] radeon 0000:00:01.0: firmware: direct-loading firmware radeon/SUMO_rlc.bin [ 8.529488] radeon 0000:00:01.0: firmware: direct-loading firmware radeon/SUMO_uvd.bin [ 19.630644] radeon 0000:01:00.0: firmware: direct-loading firmware radeon/CAICOS_pfp.bin [ 19.643083] radeon 0000:01:00.0: firmware: direct-loading firmware radeon/CAICOS_me.bin [ 19.666632] radeon 0000:01:00.0: firmware: direct-loading firmware radeon/BTC_rlc.bin [ 19.680961] radeon 0000:01:00.0: firmware: direct-loading firmware radeon/CAICOS_mc.bin [ 19.689267] radeon 0000:01:00.0: firmware: direct-loading firmware radeon/CAICOS_smc.bin

Voir Solution plus bas.

fglrx ( Catalyst pilote propriétaire driver AMD ) étant en fin de vie, je m’intéresse pas mal au sujet des pilotes libres open en ce moment.

Je profite de l’occasion pour m’inscrire et te répondre. Bien que je sois sous Ubuntu.

Il s’agit dans mon cas d’un système hybride Hybrid muxless SUMO TURKS ( Radeon 6480G et 6650M ).

De mon expérience, il y a 2 cas de figure:

  1. Power management activé par défaut
  2. Désactiver le power management

1. Power Management

Aucune option de boot:
( radeon.run.pm=1 et radeon.dpm=1 sont activés par défaut)

Terminal:

$ sudo su 

$ cat /sys/kernel/debug/vgaswitcheroo/switch`


0:IGD:+:Pwr:0000:00:01.0
1:DIS: :DynOff:0000:01:00.0

Un seul GPU est activé ( intégré integrated ), ce qui est plus économe en énergie et “DRI_PRIME=1 app” permet d’utiliser la carte dédiée discrete si on le veut. Du moins si tout va bien, car…

$ xrandr --listproviders 

Provider 0: id: 0x54 cap: 0x9, Source Output, Sink Offload crtcs: 2 outputs: 3 associated providers: 0 name:SUMO @ pci:0000:00:01.0

C’est mon problème, il n’y a qu’un provider GPU reconnu !

 $ DRI_PRIME=1 steam

( ou glxgears etc … )
DRI_PRIME=1 donne une fenêtre blanche, et dmesg précise le message d’erreur décrit dans le 1er commentaire.

$ dmesg    

[   80.997619] [drm:atom_op_jump [radeon]] *ERROR* atombios stuck in loop for more than 5secs aborting
    [   80.997643] [drm:atom_execute_table_locked [radeon]] *ERROR* atombios stuck executing D05E (len 62, WS 0, PS 0) @ 0xD07A
    [   80.997664] [drm:atom_execute_table_locked [radeon]] *ERROR* atombios stuck executing BCC6 (len 1036, WS 4, PS 0) @ 0xBDC3
    [   80.997685] [drm:atom_execute_table_locked [radeon]] *ERROR* atombios stuck executing BC5C (len 76, WS 0, PS 8) @ 0xBC64
    [   80.997930] [drm:radeon_pm_resume [radeon]] *ERROR* radeon: dpm resume failed
    [   82.606831] radeon 0000:01:00.0: Wait for MC idle timedout !
    [   82.807837] radeon 0000:01:00.0: Wait for MC idle timedout !
    [   82.825733] [drm] PCIE GART of 1024M enabled (table at 0x0000000000274000).
    [   82.825848] radeon 0000:01:00.0: WB enabled
    [   82.825852] radeon 0000:01:00.0: fence driver on ring 0 use gpu addr 0x0000000040000c00 and cpu addr 0xffff8800355a2c00
    [   82.825854] radeon 0000:01:00.0: fence driver on ring 3 use gpu addr 0x0000000040000c0c and cpu addr 0xffff8800355a2c0c
    [   82.834912] radeon 0000:01:00.0: fence driver on ring 5 use gpu addr 0x0000000000072118 and cpu addr 0xffffc90001032118
    [   83.052322] [drm:r600_ring_test [radeon]] *ERROR* radeon: ring 0 test failed (scratch(0x8504)=0xFFFFFFFF)
    [   83.052344] [drm:evergreen_resume [radeon]] *ERROR* evergreen startup failed on resume
    [   83.052463] [drm:radeon_pm_resume [radeon]] *ERROR* radeon: dpm resume failed
    [   88.053692] [drm:atom_op_jump [radeon]] *ERROR* atombios stuck in loop for more than 5secs aborting
    [   88.053712] [drm:atom_execute_table_locked [radeon]] *ERROR* atombios stuck executing C670 (len 1136, WS 0, PS 0) @ 0xC69A

Pourtant, le GPU dédié discrete est activé

$ cat /sys/kernel/debug/vgaswitcheroo/switch

0:IGD:+:Pwr:0000:00:01.0
1:DIS: :DynPwr:0000:01:00.0

2. Aucun Power Management

Changer les paramètres du kernel / boot options pour désactiver le power management

Terminal:

$ sudo gedit /etc/default/grub

GRUB_CMDLINE_LINUX_DEFAULT=“quiet splash radeon.runpm=0”

Ce paramètre désactive le power management

Enregistrer le changement dans GRUB:

$ sudo update-grub

Reboot. Puis,

$ sudo su

$ cat /sys/kernel/debug/vgaswitcheroo/switch

0:IGD:+:Pwr:0000:00:01.0
1:DIS: :Pwr:0000:01:00.0

Les 2 cartes sont activées en permanence. Ce n’est pas idéal pour un portable en termes d’autonomie…

Mais cette fois on voit bien les 2 cartes via

$ xrandr --listproviders 

Providers: number : 3
Provider 0: id: 0x7a cap: 0x9, Source Output, Sink Offload crtcs: 2 outputs: 3 associated providers: 2 name:SUMO @ pci:0000:00:01.0
Provider 1: id: 0x45 cap: 0x6, Sink Output, Source Offload crtcs: 6 outputs: 0 associated providers: 2 name:TURKS @ pci:0000:01:00.0
Provider 2: id: 0x45 cap: 0x6, Sink Output, Source Offload crtcs: 6 outputs: 0 associated providers: 2 name:TURKS @ pci:0000:01:00.0

Du coup la carte dédiée discrete fonctionne dans les jeux games via

DRI_PRIME=1 steam

Miracle!

Pas de message d’erreur dans dmesg:

$ dmesg
[    3.293255] [drm] ring test on 0 succeeded in 2 usecs
[    3.293271] [drm] ring test on 3 succeeded in 7 usecs
[    3.470610] [drm] ring test on 5 succeeded in 2 usecs

Bref il y a un compromis trade-off à trouver pour le moment entre mobilité et applications gourmandes en 3D.

Solution : Passer radeon.runpm=0 aux paramètres du kernel tel que décrit au point 2 devrait résoudre ton problème (mais 2 GPU fonctionneront = + chaud et - autonomie ). :slight_smile:

NB : Si tu n’arrives pas à booter, fais un backup de ton /etc/X11/ xorg.conf (ou /etc/X11/xorg.conf.d/r.conf ou /xorg.conf.d/radeon.conf ), puis supprime-le et reboot. Il est possible que tu donnes une mauvaise config, sur laquelle Xorg n’arrive pas à booter. Laisse-le détecter lui-même cette config.

PS: Certains termes en anglais sont là pour le référencement. Désolé pour la lisibilité, mais le sujet est délicat et si ça peut aider pour les recherches (y compris pour des anglophones), vous ne m’en voudrez pas.