長年にわたり、私は外部モニターの画像を増やす見苦しいビデオ構成を持つSIS 771/671グラフィックスカードを備えた古いラップトップを持っていました。この質問は私にこの問題ビデオカードを正しく設定する方法を提供するディストリビューションを見つけます。
しかし、間違ったビデオ設定があって3年が経過した今、私のラップトップは起動を開始します。時には正しいビデオ設定で起動したり、そうでない場合もあります。なぜ?どのように?グラフィックカードが正しい設定になるように「自動」変更が何であるかを確認できますか?
私はDebian 8を使用しています。
出力xrandr - 詳細間違った映像構成で起動した場合:
xrandr: Failed to get size of gamma for output default
Screen 0: minimum 640 x 480, current 1024 x 768, maximum 1024 x 768
default connected 1024x768+0+0 (0x148) normal (normal) 0mm x 0mm
Identifier: 0x147
Timestamp: 24735
Subpixel: no subpixels
Clones:
CRTC: 0
CRTCs: 0
Transform: 1.000000 0.000000 0.000000
0.000000 1.000000 0.000000
0.000000 0.000000 1.000000
filter:
1024x768 (0x148) 0.000MHz *current
h: width 1024 start 0 end 0 total 1024 skew 0 clock 0.00KHz
v: height 768 start 0 end 0 total 768 clock 0.00Hz
800x600 (0x149) 0.000MHz
h: width 800 start 0 end 0 total 800 skew 0 clock 0.00KHz
v: height 600 start 0 end 0 total 600 clock 0.00Hz
640x480 (0x14a) 0.000MHz
h: width 640 start 0 end 0 total 640 skew 0 clock 0.00KHz
v: height 480 start 0 end 0 total 480 clock 0.00Hz
1280x768 (0x155) 79.500MHz
h: width 1280 start 1344 end 1472 total 1664 skew 0 clock 47.78KHz
v: height 768 start 771 end 781 total 798 clock 59.87Hz
1280p (0x160) 79.500MHz
h: width 1280 start 1344 end 1472 total 1664 skew 0 clock 47.78KHz
v: height 768 start 771 end 781 total 798 clock 59.87Hz
出力xrandr - 詳細ブーツを履くとき正しいビデオ構成:
xrandr: Failed to get size of gamma for output default
Screen 0: minimum 640 x 480, current 1280 x 768, maximum 1280 x 768
default connected 1280x768+0+0 (0x14a) normal (normal) 0mm x 0mm
Identifier: 0x149
Timestamp: 29118
Subpixel: unknown
Clones:
CRTC: 0
CRTCs: 0
Transform: 1.000000 0.000000 0.000000
0.000000 1.000000 0.000000
0.000000 0.000000 1.000000
filter:
1280x768 (0x14a) 59.965MHz *current
h: width 1280 start 0 end 0 total 1280 skew 0 clock 46.85KHz
v: height 768 start 0 end 0 total 768 clock 61.00Hz
1024x768 (0x14b) 47.972MHz
h: width 1024 start 0 end 0 total 1024 skew 0 clock 46.85KHz
v: height 768 start 0 end 0 total 768 clock 61.00Hz
800x600 (0x14c) 29.280MHz
h: width 800 start 0 end 0 total 800 skew 0 clock 36.60KHz
v: height 600 start 0 end 0 total 600 clock 61.00Hz
640x480 (0x14d) 18.432MHz
h: width 640 start 0 end 0 total 640 skew 0 clock 28.80KHz
v: height 480 start 0 end 0 total 480 clock 60.00Hz
昨日、ノートブックで起動したのと同じパラメータを使用して新しいモデル行を追加しようとすると(外部モニタに対応)、次のようになります。
xrandr --newmode "1280x768" 79.50 1280 1344 1472 1664 768 771 781 798 -Hsync +Vsync
出力は次のとおりです
xrandr: Failed to get size of gamma for output default
X Error of failed request: BadName (named color or font does not exist)
Major opcode of failed request: 140 (RANDR)
Minor opcode of failed request: 16 (RRCreateMode)
Serial number of failed request: 19
Current serial number in output stream: 19
1280×768解像度のモードを選択すると、次のエラーメッセージが表示されます。
xrandr: cannot find mode 1280x768
xrandr: cannot find mode 1280p
他の既存のモードxrandrとうまく動作します。
以下を使用して別の名前で既存のスキーマを追加しようとすると:
xrandr --newmode "1024t" 63.50 1024 1072 1176 1328 768 771 775 798 -Hsync +Vsync
次のエラーメッセージが表示されます。
xrandr: Failed to get size of gamma for output default
無効なビデオ設定で起動した場合、Xorg.0.logの内容は次のとおりです。
正しいビデオ設定で起動すると、Xorg.0.logの内容は次のようになります。
最後のアップデート:回避策。 外部モニタをオフにしてコンピュータを起動し、GUIが初期化された後に電源を入れると、システムが正しいビデオ設定を取得できることがわかりました。
答え1
ログに示すように、代わりにVESAドライバを使用しています。SISドライバ。実際、私はSISドライバの現在の状態について確信していません。一部のドライバのサポートは、誰もメンテナンスしていないために中断され、SISドライバもそのうちの1つである可能性があることを曖昧に覚えています。
それにもかかわらず、VESAドライバはBIOS呼び出しを使用して、事前定義されたVESAモードに制限されるモードを設定します。これは、同期タイミングフィールドに0がある理由を説明します。この値はドライバが使用しないため重要ではありません。また、VESAモードに従わないモデルラインを使用することができない理由も説明します。xrandr
モデルラインを追加するためのインターフェイスは引き続き機能しますが、使用されません。
ログによると、モニターのEDIDは14種類のモードを提供し、そのうち3つのモードのみが有効です。
[ 27.440] (**) VESA(0): Built-in mode "1024x768"
[ 27.440] (**) VESA(0): Built-in mode "800x600"
[ 27.440] (**) VESA(0): Built-in mode "640x480"
したがって、VESAドライバを使用している場合は、これら3つのドライバから選択することができ、同期タイミングを調整することはできません。
モニタが時々画像を「拡張」し、時には正しく同期する理由は、依然として同じ推測です。 BIOS が必要なすべてのレジスタを設定していないか、VESA 1024x768 モードの同期タイミングがモニターに対して十分明確ではありません。正しく同期するには。ある時はこのように同期され、ある時はそのように同期されます。
オプション:SISドライバーが正しく機能するようにしてください。これを行うには、ドライバが実際に使用されなくなった場合は、ドライバコードを確認して更新する必要があります。それとも他の人を探してください。
代替案:何も考えられません。
編集する
違いは、「正しい」場合はモニターでEDID読み取りが失敗し、「間違っている」場合はEDID読み取りが成功することです。前者の場合、ドライバは内部の「標準」表を参照して、ユーザーに適した追加モードを提示することができます。
他のドライバのEDID情報を上書きできますが、AFAIKではVESAドライバを上書きすることはできません。
オプション:
これを正しく実行し、SISドライバが正しく機能するようにするには、上記を参照してください。
他のドライバと同様に、EDIDを無視するようにVESAドライバを変更してください(良いCプログラミング技術が必要です)。
解決策:カスタムVGAプラグをはんだ付けし、2つのDDCピンを未接続のままにしてください。VGAコネクタ、すべてのEDID読み取りが失敗するように強制します(はんだ付け技術が必要)。
**編集する**
Leandros Lópezが説明する解決策:外部モニターの電源を切ってコンピュータを起動します。これによりEDIDの読み取りが失敗し、使用可能なモードは代替モードになります。 Xサーバーが初期化された後に開きます。