質問: モニターのスリープ後のdisplayportリンク障害? windows 7 64ビットコンピューターに3台目のモニターを追加しました。モニターがスリープ状態になっても、起動しません。他の2つのモニターは正常に起動します(hdmiおよびdviを介して接続)。追加した新しいモニター(asus vs278q-p)はdisplayport経由で接続されています。私のビデオカードは、catalyst 15.7ドライバーバージョン15.20.1046を使用してdvi、hdmi、displayport接続を備えたamd radeon hd 5830カードです。モニターの電源をオフにしてからオンにすると、信号が届きますが、モニターがオンになると、そのモニターのすべてのウィンドウが別のモニターに移動し、displayport link failureに関するエラーメッセージが表示されます。 一部のフォーラムでは、これがdisplayportハンドシェイクと関係があると示唆しています。 「モニターの電源をオフ/オンすることで、オペレーティングシステムやビデオカードにdpハンドシェイクを強制的に再開させます」(ソース: https://www.sapphireforum.com/showthread.php?32467-displayport -monitor-does-not-wake-from-sleep ) モニターがx分後にスリープするように設定されている間、コンピューターがスリープしないように設定されていることに注意してください。フォーラムで、コンピュータがスリープに設定されているときにコンピュータがウェイクするとdisplayportハンドシェイクが送信されると信じていると人々が言うのを見たことがありますが、モニタがスリープし、コンピュータがスリープしない場合、モニタがビデオカードをウェイクするとdisplayportハンドシェイクを送信しません。これを解決する方法に関するアイデアはありますか?私が考えることができる2つの回避策はどちらも理想的ではありません。 モニターがスリープ状態になるたびに手動でモニターのオン/オフを切り替え、ウィンドウを再配置する モニターをスリープしないように設定します。 [〜#〜]更新[〜#〜]答えは、以下に答えるように、単にddc/ciを無効にすることだと思いましたが、それが答えだと思い込むのは少し早かったです。モニターがスリープ状態になった場合、すぐに目を覚ますことができ、すべてが正常ですが、1分間以上スリープすると、目覚めません。モニターの電源を入れ直すと、上記のdisplayport link failureエラーが発生します。
回答: このスレッドに感謝-それは私自身の問題をデバッグするのに役立ちました。このように動作するdp入力を備えた「その他の中国の工業用」モニターに出くわしました。入手可能な情報に基づいて、それはモニターの障害です。dp(サウスブリッジからディスプレイマトリックスドライバーへの単一の電気ホップ)の背後にある当初の意図にもかかわらず、モニターには「adボード」が含まれており、複数のビデオ入力(vga、hdmi、dp)から選択することができます)。 hpd信号を駆動するのはモニター内部の「adボード」であり、単純なプルアップではありません。利用可能な限られた情報に基づくと、hpdは通常、ビデオシンクからビデオソースへ(モニターからpcへ)、特定のディスプレイにビデオシンクが接続されている静的レベルベース(アクティブ高)の単なる表示ですビデオソースのポートソケット。さらに、これはモニターがhpd信号を「フックフラッシュ」するために使用できるとされており、pcに割り込みパルスを送信するためにモニターに「auxバストランザクション」を要求する唯一の方法です(auxプロトコルは、明らかにpcがマスターである要求/応答、マスター/スレーブです)。私の実際の経験に基づいて、私はこの「割り込み」機能がどれだけ使用されているか疑問です-それはおそらく必須ではありません。私の場合、(ディスプレイの)コールドパワーアップ後、pcはディスプレイを正常にウェイクアップするように見えますが、pcがs3スリープ(ramへのサスペンド)に入ると、ディスプレイで何かが発生し、 t pcがウェイクアップした後にウェイクアップします。より正確には、s3からウェイクアップした後、pcはdpソケットに接続されたディスプレイを検出しません。理由:ディスプレイがhpdワイヤーを引き上げることができないためです。興味深いことに、pcがスリープ状態のときにモニターの電源を入れ直すと、pcがs3スリープから復帰した後にディスプレイが復帰します。また、pcがディスプレイをオフにして電力(または画面のバックライト)を節約するように構成されていても、cpuとosは稼働したままであれば問題は発生しません。したがって、pcが「pcがs3スリープに移行する」シーケンス中にauxまたはdpペイロードを介してモニターに伝える「おやすみ」のようなものであり、モニターは完全にスリープ状態になることで応答します。興味深いことに、私の犯したモニターでは、モニターの電源を入れ直した後、hpd信号は非アクティブになり、ホストpcがs3をスリープ状態にした後の状態とほとんど同じに見えます。しかし、どういうわけか、pcはコールドパワーアップ後に表示を再開し、hpdが高くなります。 s3からのウェイクアップ後(モニターのパワーサイクルが先行しない)、hpdはローのままです。何らかの追加のハンドシェイクが行われているかのように-ペイロード、auxチャネル、またはhpd信号自体(スコープで確認されていない)かどうかは不明です。どちらにしても、モニターのadボードのコントローラーチップにファームウェアのバグがあると思われます。この議論やその他の場所、通常はamdグラフィックスのコンテキストでulpsキーワードに気づきました。私のグラフィックアダプターはintel igp(この場合、第3世代= ivy bridge)です。 intelグラフィックスのコンテキストにおけるulpsに関するまれな注意事項は、オープンソースのドライバー作成者を対象としたいくつかのオープンハードウェアのドキュメントに記載されています。 windows環境ではあまり使用されません。また、インテルのigpドライバー設定ユーティリティは、以前よりもまともでした-特にiegdは、調整可能な優れたドライバーパッケージでしたが、今は、利用可能なものを使用する必要があります。レジストリでdelayeddetectionfordpを延長しようとしましたが、効果はありませんでした。また、config utilおよびvgaドライバーのプロパティでは、「ポートを強制的にアップ」する方法はありません。 (ddcへの依存を無効にするオプションはありませんが、ddc/edidの可用性は、hpd入力やvga負荷インピーダンス測定とは異なり、別の問題のようです。)最終的に、私はadボード(モニターの内側)にはんだ付けしました。長い話ですが、幸いなことに、dpソケットの背面のピン18からきちんとしたpcbトレースがありました。 hpd信号を駆動するゲート出力と直列に10オームの抵抗を見つけたので、それを削除しました。また、+ 3.3vスタンバイ電圧レールをブロックする近くのコンデンサ(mlcc)に1kプルアップを取り付けました。これで、ディスプレイが壁に差し込まれている限り、hpdラインは常にhighになります。明らかに、モニターからpcへの割り込みの理論的な可能性は、モニターが適切に機能するための要件ではありません。イラストを貼るだけです いいえモニターやadボードのメーカーについては触れません。注意:hpdトレースを+ 3.3vに短絡するだけでは完了できません。私の場合、ゲート出力(hpdラインドライバー)は、lowのときにgndに対して30オームと測定されます。 + 3.3vへの短絡は何かを吹き飛ばします(ゲート出力だけを揚げるのは幸運でしょう)。この種のハックは、electronics.stackexchange.comに属するいくつかの予防策と「方法を知る」ことです。いくつかの基本的なツールは言うまでもありません:はんだ付けペン、鋭いプローブを備えたマルチメーター、および強力な拡大鏡。 (そして、ケシの実のサイズの抵抗器をきれいにはんだ除去するための何か...熱風の薄い流れを使用するものもあり、awg24ワイヤーで作られたカスタムのダブルチップループを備えたヴィンテージのはんだ付けガンを好むかもしれません。)