Forum Linux.général Laptop amdgpu et sortie externe

Posté par  . Licence CC By‑SA.
Étiquettes : aucune
3
28
fév.
2024

Bonjour,

je suis depuis peu le possesseur d'un laptop tuxedo sirius disposant de 2 puces graphiques, une integrée dans le CPU et une plus puissante "externe",
voila sortie de lspci | grep VGA :

03:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Navi 33 [Radeon RX 7700S/7600/7600S/7600M XT/PRO W7600] (rev c7)
68:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Phoenix1 (rev c2)

Par défaut, c'est la puce Phoenix1 qui est utilisée, car je suppose moins gourmande en ressources.
Seulement voila, j'ai l'impression que la sortie HDMI de ce portable n'est connectée qu'à la puce radeon RX 7600M XT

on le voit assez bien avec la commande "drm_info" (je ne mets pas l'output de cette commande ici car il est très verbeux) qui m'indique que le "connecteur" eDP est à l'état connected pour la puce phoenix1 et disconnected pour la radeon alors que le connecteur "hdmi" est seulement présent pour la puce radeon, pas de trace de lui dans les connecteurs liés à phoenix1

Mon problème alors, est que lorsque je branche un écran hdmi sur le laptop, il n'est pas détecté.
j'utilise pour savoir cela la commande "udevadm monitor" qui reste désespérement vide alors que je connecte ou déconnecte mon écran hdmi.

Par contre, lorsque j'exécute la commande "drm_info" pour avoir plus d'linfos sur ce qui se passe, je constate déjà que :
1) la première exécution est relativement lente (4~5 secondes)
2) des événements se mettent à apparaitre dans la sortie de "udevadm monitor" lors de l'ajout et le retrait du cable hdmi, et de plus mon environnement de bureau (kde) les détecte bien et étend le bureau.

Je suppose donc que la carte radeon est dans un état de veille pour éviter la consommation et que le premier appel à drm_info l'initialise et la sors de cet état.
les appel suivants à drm_info sont de plus instantanés
Enfin, si je déconnecte l'écran externe et que j'attends un certain moment, les événements n'arrivent plus et un appel à drm_info reprends de nouveau quelques secondes, je suppose que le pilote a remis la carte (ou le connecteur hdmi) dans un état de veille.

Ma question est donc la suivante, est ce que ce comportement est attendu ?
Et partant de la supposition qu'il ne l'est pas, car je trouve bizarre d'avoir besoin de ce genre de workaround (une commande obscure) pour avoir un second écran détecté, où dois-je rapporter le bug correspondant ?

Ma distrib est debian sid, je suis passé à un kernel 6.7 que j'ai récup sur experimental et je suis allé chercher les derniers firmware amdpgu sur le git officiel de firmwares du kernel pour être le plus à jour possible niveau drivers.

Un détail de plus, le pilote est bien chargé dans le noyau, j'ai comparé un lsmod avant et après appel à drm_info et pas de différence. De plus j'ai un petit binaire qui initialise vulkan et demande quelles cartes graphiques sont présentes pour faire de la 3D. Il me retourne bien mes 2 cartes (plus llvmpipe qui est un pipe pur software) mais ne déclanche pas pour autant les événements de connexion d'écran.

Toute suggestion ou idée est la bienvenue.

  • # TuxedoOS ?

    Posté par  (site web personnel) . Évalué à 5 (+3/-0).

    A tu essayé de voir si tu avais le même problème sous leur distribution TuxedoOS ? Auquel cas tu pourrais leur remonter le problème.

    • [^] # Re: TuxedoOS ?

      Posté par  . Évalué à 4 (+2/-0).

      Je n'ai pas testé cela, et je viens de voir qu'elle était disponible en live usb, je le tenterai ce week end pour voir et je repasse poster mes résultat ici au passage.
      Merci pour la suggestion.

  • # Remonter le souci sur le bug tracker

    Posté par  . Évalué à 1 (+0/-0).

    Ma question est donc la suivante, est ce que ce comportement est attendu ?

    La mise en veille quand la carte n'est pas utilisée et les quelques secondes pour la réveiller : oui.

    Que le branchement sur le port HDMI ne réveille pas la carte : non.

    Je te suggère d'ouvrir un ticket ici : https://gitlab.freedesktop.org/drm/amd/-/issues/ avec les mêmes infos que celle tu as déjà indiquées ici + dmesg.

  • # Reverse Prime

    Posté par  . Évalué à 2 (+1/-0).

    Tu peux regarder la doc de arch linux à ce propos pour essayer de résoudre ton problème

    https://wiki.archlinux.org/title/PRIME

    En particulier la partie reverse prime.

    https://wiki.archlinux.org/title/PRIME#Reverse_PRIME

  • # compléments

    Posté par  (site web personnel) . Évalué à 2 (+0/-0).

    on le voit assez bien avec la commande "drm_info" (je ne mets pas l'output de cette commande ici car il est très verbeux) qui m'indique que le "connecteur" eDP est à l'état connected pour la puce phoenix1 et disconnected pour la radeon alors que le connecteur "hdmi" est seulement présent pour la puce radeon, pas de trace de lui dans les connecteurs liés à phoenix1

    tu as inxi -Ga qui devrait corroborer quoi est connecté à quoi (et est peu verbeux).
    Ça donne quoi ? Avec HDMI débranché puis branché.

Envoyer un commentaire

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.