使用libdrm在Linux下读取DisplayPort DDC / CI

我试图从我的笔记本电脑的DisplayPort链接上连接的显示器上读取DDC信息。

因此,我正在查找与i2cdetecti2cdump但无法find它连接到/ dev / i2c总线。

我的下一步是通过libdrm访问,而且我已经build立了drmModeConnector但接下来会发生什么?

根据德卡的回答,我试了一下

 sudo i2cdetect -l i2c-0 i2c i915 gmbus ssc I2C adapter i2c-1 i2c i915 gmbus vga I2C adapter i2c-2 i2c i915 gmbus panel I2C adapter i2c-3 i2c i915 gmbus dpc I2C adapter i2c-4 i2c i915 gmbus dpb I2C adapter i2c-5 i2c i915 gmbus dpd I2C adapter i2c-6 i2c DPDDC-B I2C adapter i2c-7 smbus SMBus I801 adapter at efa0 SMBus adapter 

其中显示面板连接到i2c-2和DisplayPort到i2c-6 。 当我运行$ sudo get-edid -b 6会导致:

 $ sudo get-edid -b 6 2 potential busses found: 2 6 Only trying 6 as per your request. Bus 6 doesn't really have an EDID... Couldn't find an accessible EDID on this computer. Attempting to use the classical VBE interface Performing real mode VBE call Interrupt 0x10 ax=0x4f00 bx=0x0 cx=0x0 Function supported Call successful VBE version 300 VBE string at 0x11100 "Intel(R) Sandybridge/Ivybridge Graphics Chipset Accelerated VGA BIOS" VBE/DDC service about to be called Report DDC capabilities Performing real mode VBE call Interrupt 0x10 ax=0x4f15 bx=0x0 cx=0x0 Function supported Call successful Monitor and video card combination does not support DDC1 transfers Monitor and video card combination supports DDC2 transfers 0 seconds per 128 byte EDID block transfer Screen is not blanked during DDC transfer Reading next EDID block VBE/DDC service about to be called Read EDID Performing real mode VBE call Interrupt 0x10 ax=0x4f15 bx=0x1 cx=0x0 Function supported Call failed The EDID data should not be trusted as the VBE call failed Looks like VBE was successful. Have a good day. 

虽然感谢您的帮助! @dekkard

任何人都可以给我一个暗示或发表一些教程?

非常感谢和最好的问候,

Befedo

尝试

 sudo get-edid 

get-edid,parse-edid-read-edid工具来检索和解释使用VESA VBE DDC协议的监视器规范

欲了解更多信息,请看这里: http : //manpages.ubuntu.com/manpages/lucid/man1/get-edid.1.html

更新:

试试看ddccontrol

此外,这可能会导致您的解决方案:

https://unix.stackexchange.com/questions/114359/how-to-get-edid-for-a-single-monitor

get-edid相同的结果,显示HDMI监视器EDID的唯一功能是xrandr --verbose