Fake moniteur EDID information

9

Mon moniteur est un peu capricieux. Parfois, je lance un programme qui parcourt les résolutions et le moniteur refuse de donner ses informations EDID pendant quelques jours:

(/var/log/Xorg.0.log)
[   239.653] (II) fglrx(0): Restoring Recent Mode via PCS is not supported in RANDR 1.2 capable environments
[   260.113] (II) fglrx(0): Cannot get EDID information for CRT1
[   271.166] (II) fglrx(0): Cannot get EDID information for CRT1
(^ ran xrandr, this happens)

Cela fait penser à la carte vidéo que la résolution maximale qu'elle prendra en charge est 1600x1200, alors que je l'exécutais à la résolution optimale 1680x1050 que le manuel du moniteur dit qu'elle prend en charge. xrandrne répertorie même pas ce mode comme étant pris en charge.

Maintenant, j'ai à nouveau ce même problème parce que j'expérimentais avec Wine, ce qui a causé le crash de Xorg et m'a forcé à redémarrer.

Parfois, je trouve comment le récupérer (j'ai oublié comment), et parfois il se corrige.

La première fois que cela s'est produit, j'ai pensé que je ferais mieux de faire une sauvegarde des informations EDID binaires en utilisant read-edid, que j'ai enregistrées dans un fichier de 128 octets sur mon disque dur. Cela m'amène à ma question:

Comment dites-vous à fglrx de lire les informations EDID du fichier et de ne pas essayer de les récupérer sur le moniteur?


Information additionnelle:

Je pensais que c'était la faute de la carte vidéo, mais cela se produit avec une nouvelle carte vidéo (toujours des pilotes fglrx), ainsi que de nouveaux câbles VGA.

Le moniteur est un Westinghouse LCM-22w3 branché sur le port VGA de la carte graphique, une ATI Radeon HD 3200.

J'ai fait des recherches à ce sujet, et apparemment, c'est une plainte quelque peu courante du LCM-22w3, mais personne ne semble avoir la moindre idée de la façon de résoudre le problème.

fglrx 8.92, xorg-server 1.9.5, noyau 2.6.38.7 x86_64 arch.

amphétamachine
la source

Réponses:

4

Lorsque j'ai utilisé un commutateur KVM VGA bloquant EDID, j'ai utilisé un petit script pour corriger la résolution après la connexion:

xrandr --newmode "1600x1200_60.00"  162.00  1600 1664 1856 2160  1200 1201 1204 1250 +hsync +vsync
xrandr --addmode VGA-1 1600x1200_60.00
xrandr --output VGA-1 --mode 1600x1200_60.00

Je pense que j'ai obtenu la ligne de mode de xrandr en quelque sorte (avec le moniteur branché directement). J'ai essayé de le mettre dans le fichier de configuration X, mais le stupide serveur X a continué de l'ignorer pour diverses raisons fallacieuses.

fstx
la source
1
Merci, cela a fonctionné pour moi. De plus, afin d'obtenir des valeurs par défaut pour mon écran, j'utilise la commandecvt
remi
Soit dit en passant, si vous avez 2 écrans, lorsque vous définissez la résolution du deuxième écran (par exemple, un écran externe avec un ordinateur portable), je ne peux plus utiliser arandr pour fixer les positions de l'écran. Mais vous pouvez toujours utiliser xrandr avec --left-of ou autre chose
remi
1

Vous pourriez essayer

Option "IgnoreEDID" "TRUE"

puis spécifiez manuellement les informations de votre moniteur. Si IgnoreEDID ne fonctionne pas pour vous, essayez

Option "UseEDIDFreqs" "FALSE"
Option "UseEDIDDpi" "FALSE"
Dr. JKL
la source
1
[433447.647] (WW) fglrx (0): L'option "UseEDIDFreqs" n'est pas utilisée [433447.647] (WW) fglrx (0): L'option "UseEDIDDpi" n'est pas utilisée [433447.647] (WW) fglrx (0): L'option "IgnoreEDID "n'est pas utilisé [433447.647] (WW) fglrx (0): l'option" CustomEDID "n'est pas utilisée
amphétamachine
De quelle distribution s'agit-il? Je n'ai pas de système approprié pour tester (mais je sais par expérience précédente que CustomEDID devrait fonctionner, au moins) - vous pourriez avoir besoin d'autres conditions préalables pour qu'un EDID personnalisé fonctionne. Par exemple: en.gentoo-wiki.com/wiki/Radeon#Custom_EDID
Dr. JKL
1
C'est Slackware, mais cela ne devrait pas avoir d'importance. Les pilotes mentionnés dans le lien que vous avez fourni concernent le pilote "radeon" F / OSS fourni avec Xorg et non le "fglrx" propriétaire que j'utilise (et doivent faire fonctionner mon accélération 3D).
amphetamachine
0

Une option non gratuite (d'accord, plutôt chère) consiste à utiliser le détective DVI de Gefen . Il s'agit d'un appareil qui mettra en cache les informations EDID d'un appareil, puis les fournira en permanence à un PC.

J'ai dû les utiliser auparavant avec des PC connectés à des KVM DVI qui ne réinitialisaient pas leurs écrans après avoir changé de port KVM. Ils ont très bien fonctionné pour cela, et devraient également fonctionner pour votre usage.

afrazier
la source