我有一台显示器 LG E2251(显示器细节)。
我的电脑通过 DVI-I 电缆连接到显示器;电源坏了之后,显示器就黑了。我重新启动了系统,一切似乎都正常。我像往常一样通过了 POST,但是当使用 DVI-I 连接时,我看不到 GUI 或 CLI。我相信 DVI-I 的 EDID 代码已损坏。我还尝试了其他 2 个连接:无论 HDMI 是否没有任何损坏,我收到以下关于 DVI-I 的消息
nouveau 0000:01:00.0: DRM: VRAM: 1024 MiB
[ 9.292129] nouveau 0000:01:00.0: DRM: GART: 1048576 MiB
[ 9.292133] nouveau 0000:01:00.0: DRM: TMDS table version 2.0
[ 9.292135] nouveau 0000:01:00.0: DRM: DCB version 4.0
[ 9.292137] nouveau 0000:01:00.0: DRM: DCB outp 00: 01000302 00020030
[ 9.292139] nouveau 0000:01:00.0: DRM: DCB outp 01: 02000300 00000000
[ 9.292141] nouveau 0000:01:00.0: DRM: DCB outp 02: 02011362 00020010
[ 9.292143] nouveau 0000:01:00.0: DRM: DCB outp 03: 01022310 00000000
[ 9.292145] nouveau 0000:01:00.0: DRM: DCB conn 00: 00001030
[ 9.292146] nouveau 0000:01:00.0: DRM: DCB conn 01: 00002161
[ 9.292148] nouveau 0000:01:00.0: DRM: DCB conn 02: 00000200
[ 9.296293] [drm] Supports vblank timestamp caching Rev 2 (21.10.2013).
[ 9.296294] [drm] Driver supports precise vblank timestamp query.
[ 9.309393] nouveau 0000:01:00.0: DRM: MM: using COPY for buffer copies
[drm:drm_edid_block_valid [drm]] *ERROR* EDID checksum is invalid, remainder is 185
[ 9.449801] nouveau 0000:01:00.0: DVI-I-1: EDID block 0 invalid.
[ 9.449803] nouveau 0000:01:00.0: DRM: DDC responded, but no EDID for DVI-I-1
[ 9.470675] nouveau 0000:01:00.0: No connectors reported connected with modes
[ 9.470678] [drm] Cannot find any crtc or sizes - going 1024x768
[ 9.472105] nouveau 0000:01:00.0: DRM: allocated 1024x768 fb: 0x70000, bo ffff9d41b8eafc00
[ 9.472196] fbcon: nouveaufb (fb0) is primary device
[ 9.474979] Console: switching to colour frame buffer device 128x48
[ 9.476170] nouveau 0000:01:00.0: fb0: nouveaufb frame buffer device
[ 9.508021] [drm] Initialized nouveau 1.3.1 20120801 for 0000:01:00.0 on minor 0
和 VGA 类似
[drm:drm_edid_block_valid [drm]] *ERROR* EDID checksum is invalid, remainder is 198
[ 95.783329] nouveau 0000:01:00.0: VGA-1: EDID block 0 invalid.
[ 95.783331] nouveau 0000:01:00.0: DRM: DDC responded, but no EDID for VGA-1
我的方法
- 安装
i2c-tools
在我的 Debian 机器上。 - 发现
i2c-1
是我的DVI接口 - 我
i2cdump -y 1 0x50
可以转储 EDID 代码。
i2cset
但是,当我想设置一个字节块时,
i2cset -y 1 0x50 0x00 0x00 0xff i
EDID 不会改变。
如何更正这些 EDID?UserSpace 中是否有无需汇编编程的快速解决方案?
我说我是 EDID、nouveau 驱动程序、I2C 或 SMBus 通信的新手。任何建议和纠正表示赞赏。
看起来我可以在 I2C 总线上发送字节块i2cdetect -F 1
:
Functionalities implemented by /dev/i2c-1:
I2C Block Write yes
I2C Block Read yes
...
但我不知道出了什么问题。
链接
答案1
我不知道这是否有帮助,但我发现 EDID 转储与您的显示器型号匹配(与您的转储进行比较)。
LG 电子有限公司 (GoldStar Technology, Inc.) E2251
https://github.com/linuxhw/EDID
MFG Model Name Res Size Inch Made ID
Goldstar GSM586D E2251 1920x1080 480x270mm 21.7 2011 8A799
Goldstar GSM586E E2251 1920x1080 480x270mm 21.7 2011 011A9
Goldstar GSM586E E2251 1920x1080 480x270mm 21.7 2011 2F15B
Goldstar GSM586E E2251 1920x1080 480x270mm 21.7 2011 F721B
Goldstar GSM586F E2251 1920x1080 480x270mm 21.7 2011 2CA66
如果你有 Windows 你应该尝试电源板读取/写入 EDID 数据。
一篇很棒的文章涵盖了这个主题:更改显示器 EDID(谷歌翻译自德语)