EEPROMからEDIDを読み取る

EEPROMからEDIDを読み取る

リンクから:http://en.wikipedia.org/wiki/Extended_display_identification_data

EDIDは通常、モニタのシリアルPROM(Programmable Read Only Memory)またはEEPROM(Electrically Erasable PROM)というメモリデバイスに保存され、アドレス0x50のI²Cバスを介してアクセスできます。 [1] ホストPCは通常、モニタ自体がオフになっていてもEDID PROMを読み取ることができます。

この情報をどのように読むことができますか?

答え1

私の質問に答えるには:[:)]

  1. i2cDetect -l: 既存の i2c アダプターの募集
  2. echo Y | i2cdump $i 0x50 : ここで、i は各 /dev/i2c-* のデバイス ID です。
  3. 上記のコマンドは、指定された I2C アダプターの Raw-EDID を印刷します。
  4. カスタムC(または他の)プログラミング言語を使用して情報を解析して、基本デバイスの簡潔な説明を提供できるようになりました。

[私はi2c-toolsを使用していましたが、EEPROM値を読み取るには低レベルのアセンブリプログラミングを使用する方がはるかに優れています。 ]

答え2

試してみたいかもしれません

http://polypux.org/projects/read-edid/

答え3

前回も気になりました。 Xorgの実装を見つけましたが、詳細は見ませんでした。また、明らかにカーネルモジュールi2c-devを使用してEDIDを読み取ることができます。

http://cgit.freedesktop.org/xorg/xserver/tree/hw/xfree86/ddc

関連情報