display:dp:edid/e-edid/displayid
名词
- EDID Extended Display Identification Data (Legacy VESA structure, superseded by the DisplayID structure).
- E-EDID Enhanced Extended Display Identification Data (Legacy VESA structure, superseded by the DisplayID structure).
- DisplayID Display Identification Data (VESA).
DPCD DisplayPort Configuration Data
如上,单一的edid以及e-edid都是过时的标准
DPCD::1.4
都是link相关的配置信息,通过native读取
分别是:
DPCDAddress DPCD Field
00000h - 000FFh Receiver Capability
00100h - 001FFh Link Configuration
00200h - 002FFh Link/Sink Device Status
00300h - 003FFh Source Device-specific
00400h - 004FFh Sink Device-specific
00500h - 005FFh Branch Device-specific
00600h - 006FFh Link/Sink Device Power Control
00700h - 007FFh eDP-specific
00800h - 00FFFh RESERVED (usage to be defined)
01000h - 017FFh Sideband MSG Buffers
01800h - 01FFFh RESERVED (usage to be defined)
02000h - 021FFh DPRX Event Status Indicator
02200h - 022FFh Extended Receiver Capability
02300h - 02FFFh RESERVED (usage to be defined)
03000h - 030FFh Protocol Converter Extension
03100h - 5FFFFh RESERVED (usage to be defined)
60000h - 61CFFh Multi-touch (for eDP)
61D00h - 67FFFh RESERVED (usage to be defined)
68000h - 69FFFh HDCP 1.3 and HDCP2.2
6A000h - EFFFFh RESERVED (usage to be defined)
F0000h - F02FFh LT-tunable PHY Repeater
F0300h - FFEFFh RESERVED (usage to be defined)
FFF00h - FFFFFh MyDP-specific Table2-173
dpcd版本;每条lane的最大书传输速率1.62/2.7/5.4/8.1; lane的数量[1/2/4];下游屏幕接口[dp/vga/dvi/hdmi];是否有edid;i2c速率;等等,详细信息请参阅vesa:https://vesa.org/
关于edid变更历史
EDID Development History EDID Defines the data structures sent from a video display to a source over E-DDC lines to describe its capabilities
- EDID 1.0 Defined original 128-byte data structure (Deprecated)
- EDID 1.1 Defined some alternative uses for space in data structure (Deprecated)
- EDID 1.2 Defined some alternative uses for space in data structure (Deprecated)
- EDID 1.3 Current definitions for 128-byte EDID data fields
- EDID 2.0 Introduced new 256-byte data structure
- E-EDID Defined optional additional 128-byte extension blocks for EDID 1.3, incorporated EDID 2.0 as optional extensions
- DisplayID Introduced variable length data structure
EDID::1.4
屏幕分辨率,功能等,通过i2c读取,首地址是50
分别是:
Address (Decimal) Data
0-7 Header
8-17 Vendor / Product Identification
18-19 EDID Version
20-24 Basic Display Parameters and Features 基本显示参数和特征定义为视频输入清晰度、最大水平图像尺寸,最大垂直图像尺寸,显示传输特性(Gamma),和功能支持。
25-34 Color Characteristics Color space definition
35-36 Established Supported Timings Timing information for all resolutions supported by the display are reported here
37 Manufacturer's Reserved Timing
38-53 EDID Standard Timing ID #1 – 8
54-71 Detailed Timing Descriptor Block 1
72-89 Detailed Timing Descriptor Block 2
90-107 Detailed Timing Descriptor Block 3
108-125 Detailed Timing Descriptor Block 4
126 Extension Flag Number of (optional) 128-byte extension blocks to follow
127 Checksum
Address (Decimal) 十进制地址 | Data-16进制 | General Description | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
0-7 |
"00h FFh FFh FFh FFh FFh FFh 00h" |
固定的header pattern 这些固定值是必须的正确标识EDID表数据的开始 |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
8-9 |
|
制造商ID。这是一个遗留的即插即用ID,由微软分配,它是一个16位的big-endian值,由三个5位字母组成: 00001, A; 00010, B; …; 11010, Z. E.g., 24 4d, 0 01001 00010 01101, "IBM". | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
10-11 | 制造商的产品代码。16位数字,低位优先。 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
12–15 | 序列号。32位,低位优先。对序列号的数据或格式没有明确的要求。如果序列号包含在ASCII序列号描述符中,这个字段应该为零。如果块0中没有提供序列号,那么CEA-861-E实现应该使用0x00作为块0序列号的填充。 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
16-17 |
16 生产周数; 这个字段的指定值范围从1到53。大于53的值不被识别。当没有指定星期时,可以使用零。制造商决定周编号系统。制造商应该使用一种系统,在这种系统中,周数的整数值会随着年份的推移而增加。如果制造商选择只声明型号年份 (在17地址)那么0xFF应该放在地址10 (Week of Manufacture)。 17 生产年, 这个值由实际生产年份减去1990年确定。例如:2002 - 1990 = 12或0x0C |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
18-19 |
18 EDID version, usually 01 (for 1.3 and 1.4) 不允许使用其他数字。如果其他数字被放置在这个区域,源可能会忽略整个EDID表。 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20 |
|
用于标识接收设备[显示器]所需的输出配置。对于数字显示,包括CE设备,建议设置为0x80。此值用于声明设备支持数字接口。 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
21-22 |
最大水平图像大小和垂直图像大小字段(字节0x15、0x16)用于指示接收的屏幕大小和长宽比。当已知时,应该提供有效显示区域的最大物理尺寸(在这些字段中,cm)。这些字段的一个重要用途是指示实际屏幕的高宽比。如果已知最大图像大小的高宽比,那么最大大小字段的比率应该等于该高宽比,即使最大图像大小是未知的,或者在不同的设备配置中是可变的(比如在投影中) 在填写最大图像大小字段时,应使用以下规则: a)如果已知高宽比和显示大小,则应显示实际大小,以最接近的cm为准。 如果字段被设置为零,source不应该对屏幕大小或高宽比做任何假设。 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
23 | Display gamma, factory default (range 1.00–3.54), datavalue = (gamma×100) − 100 = (gamma − 1)×100. If 225, gamma is defined by DI-EXT block. | 显示传输特性(Gamma):可以由source根据显示设备的Gamma来定制视频输出。宣告伽玛的概念与个人计算机CRT显示器,接受非伽玛校正信号有关。数字和模拟电视视频信号是伽玛纠正根据建立的行业惯例,因此需要声明,CRT伽马射线并不总是必要的。然而,这是需要的个人计算机CRT应用。虽然信号源可能不需要使用显示器的伽马值,但显示器设备的正确伽马值应该是存在的。由于一些电视阴极射线管通常具有相似的伽马值,因此在本例中使用2.2。伽马值本身没有插入到表中。相反,插入一个等于(gamma x 100) - 100的值。 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
24 |
|
特性支持由识别各种显示或接收参数的8位组成。这些包括基于VESA显示电源管理信令标准(DPMS)的节能模式,显示类型、标准默认颜色空间、首选定时模式和默认通用定时公式(GTF)。在大多数情况下,这些信息都与CE设备和个人计算机显示无关,因为GTF不常用。 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
25-34 |
|
颜色特性提供了显示设备的色度和色温参数(白色温度开氏度)的信息。 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
35-37 |
|
用于声明已建立的timing。建立的timing是由VESA识别的计算机显示时间。此表还用于指示在工厂调整和验证了所建立的timing,这意味着这些timing被支持并正确地呈现在显示器上。 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
38-53 |
|
标准时间是那些通过VESA离散显示屏幕timing或由VESA识别的 通用定时公式标准。显示设备应该列出支持的timing。数据长度是两个字节。CE设备可能不支持任何VESA计时或GTF,当没有声明timing时,就需要用0x01填充字节对中每个未使用的字节。 |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
54-125 |
|
详细的计时部分长度为72字节,可分为四个描述符块,每个描述符块为18字节。在下面的示例中,这四个块的地址范围是0x36-0x47, 0x48- First Detailed Timing Descriptor, Second Detailed Timing Descriptor, First Monitor Descriptor (Monitor Name), and Second Monitor Descriptor (Monitor Range). |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
54-71 |
When used for another descriptor, the pixel clock and some other bytes are set to 0: |
注意描述h-active和h-blanking,0x3A的高四位和第四位分别描述的不同timing: 1920 ==》0111 1000 0000 280 ==》0001 0001 1000 0x38 ==》 1000 0000 //1920的后八位 0x39 ==》 0001 1000 0x3A ==》 0111 0001 //1920的前四位:280的前四位 |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
72–89 | Second Detailed Timing Descriptor, | Second Detailed Timing Descriptor, | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
90–107 |
Currently defined descriptor types are:
|
VESA标准[10]要求四个18字节描述符中的一个是监视器名称描述符。 |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
108–125 | Second Monitor Descriptor (Monitor Range Limits) |
块0中的下一个和最后一个18字节描述符应该用作第二个监视器描述符。在本例中,它是监视器范围限制,用于指定水平和垂直频率的最小和最大参数以及最大像素时钟率。在下面的示例中,数据块的范围从0x6C到0x7D。数据格式是二进制编码的整数。 位置0x71到0x75用于指定水平和垂直频率的最小和最大参数,以及最大像素时钟。表72包含一个支持60hz垂直刷新率、15khz到46khz水平率的DTV示例,它覆盖了720x480i和1280x720p格式所需的频率,包括480x720p和1920x1080i,以及最大像素时钟80 MHz。 地址0x76用作辅助通用定时公式(GTF)的标记,通常不用于CE设备。在本例中,标志被设置为零。地址0x77到0x7D与这个标记相关。 |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
126-127 | Extension Flag and Checksum |
扩展标志用于声明EDID表中存在的扩展数量。实际提供的扩展总数应该等于在基本EDID中声明的扩展数。在基本EDID中声明的扩展数量不应包括基本EDID,而应包括块映射。例如,如果EDID数据中不存在扩展,那么扩展标志应该设置为零。如果有一个扩展名(例如CEA),那么该标志应该设置为1。如果两个(例如CEA)扩展被使用,那么VESA EDID标准也需要一个块映射扩展—将扩展的总数增加到三个。 表73包含了基于本文档中给出的表的示例数据。0x7E位置上的扩展标志被设置为1,表明存在块1。由于本例中的扩展标志等于1,因此不存在其他块。校验和的设置使整个128字节块的模256的和等于0x00 |
相关链接:
https://media.extron.com/public/download/files/articles/understandingedid.pdf
http://read.pudn.com/downloads178/ebook/828201/EIA-CEA-861E.pdf
https://en.wikipedia.org/wiki/DisplayPort
https://zh.wikipedia.org/zh-tw/EDID
https://en.wikipedia.org/wiki/Extended_Display_Identification_Data
E-EDID
E-EDID作为edid的拓展。
块0是惟一的强制块[0-127]。该表显示了E-EDID块的必要用法。所有块的长度都是128字节。所有扩展块必须是连续的。
相关链接:
http://read.pudn.com/downloads110/ebook/456020/E-EDID%20Standard.pdf
DisplayID
DisplayID v2.0是真正的第二代EDID,它是一种更灵活和可扩展的显示标识数据格式,旨在满足各种显示类型、技术和应用程序的需要。DisplayID v2.0和EDID之间最明显的区别,使用了基于“数据块”概念的模块化结构,这些数据块是单独定义的、自包含的数据格式,每个数据块提供一组特定的相关显示信息。
下面这幅图讲述的是displayid的数据块
NOTE
一般来说,edid第一个128是标准的edid块,接下来可能是其他的块;关于block,displayid是以70开头的块,如果是以02开头的块,则是cea的audio以及speaker的块
一份详细的关于edid+cea+diplayid的raw和解释
https://download.csdn.net/download/u012839187/12792110
一份关于displayid 1.3的public版本spec,非常给力
https://download.csdn.net/download/u012839187/12793610
hw-edid的值,涵盖非常多的常用显示器,值得收藏 https://github.com/linuxhw/EDID
linux代码里也有类似结构体,可以拿来用https://lxr.missinglinkelectronics.com/linux/drivers/gpu/drm/drm_edid.c
edid https://www.quantumdata.com/downloads.html
display:dp:edid/e-edid/displayid相关推荐
- 什么是EDID,EDID能做什么,EDID基本介绍
Q1: 为什么要写这篇文章? A1:在最近的工作中遇到了不少问题,其中很多都是和EDID相关的.可以说,作为一家以"显示"为生的企业,我们时时刻刻在与EDID打交道.EDID这东西 ...
- linux查看edid信息,EDID 信息
转自:http://blog.csdn.net/wowo1109/article/details/8805045 现在的显示设备比如显示器,电视等都HDMI接口,那通常每个HDMI接口都保留有一份ED ...
- CTA-861标准解析EDID的VSDB与VDB
之前在某项目上做屏幕自适应分辨率时,按照vesa标准解析edid得出的分辨率不全导致自适应功能概率性失效,换为CTA 861标准解析后功能正常.此功能的代码对数据结构知识的要求不高,但是对C语言能力要 ...
- Linux DRM(六) -- EDID
了解Extended Display Identification Data 1.EDID 工作原理 The EDID of a sink is read by a source device i ...
- HDMI协议介绍(六)--EDID
目录 什么是EDID EDID结构 1)Header Information 头信息(厂商信息.EDID 版本等) (2)Basic Display Parameters and Features 基 ...
- 【转载】EDID的简介和解析
原文:https://www.cnblogs.com/beyond-rxl/p/9266997.html 去年对EDID做了一个解析,下面是学习EDID过程中整理的资料. 一.EDID简介 EDID: ...
- EDID的简介和解析
from:EDID的简介和解析 - 花生红枣眼泪和小米 - 博客园 去年对EDID做了一个解析,下面是学习EDID过程中整理的资料. 一.EDID简介 EDID: Extended Display I ...
- Linux驱动进阶学习--HDMI设备之edid相关开发
一.引言 二.HDMI设备 ------> 1.edid ------> 2.edid修改的相关工具 ------------> 2.1.MonitorInfoView ------ ...
- 获取屏幕的宽和高-Display中getHeight()和getWidth() 官方废弃
getHeight()和getWidth() deprecated in API level 13 Display dp=getWindowManager().getDefaultDisplay(); ...
最新文章
- 一个WEB***的处理过程
- 人工智能技术的新突破:MIT科学家发明Church AI语言
- 第11届 蓝桥杯-第1、2次模拟(软件类)真题-(2020年3月、4月)-官方讲解视频
- iOS - 实现语言本地化/国际化
- OpenCV自带dnn的Example研究(3)— object_detection
- 时序数据库技术体系 – InfluxDB TSM存储引擎之数据读取
- Auto Encoder再学习
- 有故事、有实践,谈一谈深度迁移学习方法的基本思路
- 比特币交易(Transaction)的输入与输出
- mysql dba环境验收_面对一个全新的环境,作为一个Mysql DBA,应该了解
- 延迟初始化Spring Bean的几种方式
- linux centos7 录屏,centos7在线安装视频录制软件
- opencv c++ 检测红色HSV 和RGB
- js数组方法及返回值
- java获取明天的日期_使用java获取昨日的日期,今日的日期,明日的日期
- hdu 5145 NPY and girls (莫队算法)
- VB实现excel自动拆分表格
- 上海迪士尼乐园推出全新夜间演出“奇梦之光幻影秀”
- thinkphp5+阿里短信发送验证码
- instagram搜索_如何使用jQuery和PHP构建自己的Instagram搜索引擎