DP与EDP接口协议学习

本文介绍了DisplayPort(DP)和其嵌入式版本EDP的概述,对比了DP与HDMI的区别,详细解读了DP中的关键协议如Manlink、EDID、DPCD、MSA、SDP、DCS和PSR,以及EDP连接过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、概念介绍

DP----DisplayPort,一种标准化数字式视频接口&协议

DisplayPort是一个由PC及芯片制造商联盟开发,视频电子标准协会(VESA)标准化的数字式视频接口标准。该接口免认证、免授权金,主要用于视频源与显示器等设备的连接,并也支持携带音频、USB和其他形式的数据。此接口的设计是为取代传统的VGA、DVI和FPD-Link(LVDS)接口。

EDP—Embedded DisplayPort,DP协议在嵌入式领域拓展

eDP协议是针对DP(Display Port)应用在嵌入式方向架构和协议的拓展,所以eDP协议完全兼容DP协议。相对于DVI/HDMI来说,eDP具有高带宽、整合性好、相关产品设计简单,该接口已广泛应用于笔记本电脑、平板电脑、手机等其它集成显示面板和图像处理器的领域。

DP和HDMI对比----HDMI当前应用更广,DP是PC领域推出协议

HDMI出现时间更早,在2000年左右 由电视巨头 松下、索尼、东芝、飞利浦 等联合推出,基本上统一了显示领域连接设备,更具备时间优势。PC领域巨头 如 AMD、英特尔、英伟达 加上联想、戴尔、惠普等 后续推出DP接口,采用DP接口的产品主要集中在PC领域,比如电脑主板、电脑显卡、电脑显示器。但多数PC领域产品除了DP往往还支持HDMI。

二、DP&EDP相关协议分析

三条数据通路Manlink 、Aux 、HPD

eDP具有三大传输的通道:主要通道(Main Link)、附属通道(AUX)、与热插拔(HPD)。
Main Link:用来传输各种类型的视频数据和音频数据,Main Link由1~4对差分线构成,从source指向sink,数据采用ANXI 8B/10B编码方式,每条lane的速率最大为5.4Gbps,最小为1.62Gbps。
AUX:是一条独立双向半双工的传输通道,它也是一对差分信号线。速率最大1Mbps,用来传输配置参数与指令。访问EDID及DPCD、HDCP等。也可传递私有I2C数据。
HPD:热拔插信号,Rx提供,通知Tx侧是否有Rx设备连接上。
在这里插入图片描述

EDID----Extended Display Identification Data,描述Rx显示设备大致能力

Extended Display Identification Data 外部显示设备标识数据。为了能让PC或其他的图像输出设备更好的识别显示器属性,EDID担当起显示器和PC之前的传话筒。其中包含有关显示器及其性能的参数,包括供应商信息、最大图像大小、颜色设置、厂商预设置、频率范围的限制以及显示器名和序列号的字符串等等,EDID就是显示器的身份证。
在eDP设备中,EDID是通过AUX通道在开机时读取。

DPCD----DisplayPort Configuration Data定义能力细节 交互控制状态

DPCD 一组Rx端的寄存器,定义了Rx端的能力细节,也能通过写传递Tx端设置信息。
通过读取DPCD中的特定寄存器,source将知晓sink的性能。在建立数据link,即link训练期间,source对DPCD进行读写操作,以指明目标link的配置和训练阶段的结果。一些如调光等动作 也是依赖DPCD传递设置信息。

MSA&SDP----主数据流属性与可选的次级数据包,和内容帧级匹配

在内容传输期间,source出了发送视频内容,还发送额外数据:主数据流属性MSA和可选的次级数据包SDP。MSA是source向sink通知其提供的视频模式详细信息的途径。SDP可包含多媒体内容的音频部分以及所谓的INFOFRAMES。INFOFRAMES是定义视频和音频结构的数据。
相对DPCD设置寄存器方式,MSA和SDP可以做到和帧级内容匹配。比如HDR信息,就是通过SDP传递。

DCS----Display Stream Compression Vesa定义的视觉无损压缩标准

DSC主要目的是通过保持高分辨率和帧率的情况下压缩减少传输带宽,在HDMI、MIIPI、DisplayPort等接口上广泛使用。在传递数据的时候Tx进行压缩,Rx端解压后使用显示。
压缩参数通过PPS(Picture Parameter Set)描述,通过SDP包传递到Rx端使用。

PSR与PSR2----(EDP特有)屏幕自刷新,目的降低系统功耗

PSR自刷新的目的就是降低系统功耗,而且是eDP嵌入式应用最主要的节省功耗的方式。
要支持PSR,Rx设备要有缓存Buffer把前端Tx送的内容记录到本地RFB中,此时如果Tx端关闭MainLink,Rx端可以按照RFB中的内容刷新显示。自刷新PSR通常通过SDP包发送通知进入。PSR状态切换如下图
在这里插入图片描述

PSR2是第二代PSR,相对PSR增加的能力是支持局部刷新,普通PSR只支持整帧刷新。

三、EDP建立连接过程

在这里插入图片描述

参考

DisplayPort(DP)协议标准V1.4:http://www.360doc.com/document/22/0710/22/476286_1039369149.shtml
DP/eDP协议学习:
https://blog.csdn.net/jiuyuetingyue/article/details/124024939
EDID的简介和解析:
https://blog.csdn.net/varistor/article/details/120882835
DisplayPort-DP接口知识:
https://blog.csdn.net/u012839187/article/details/90475941

<think>好的,用户现在问的是关于EDP自测模式的内容。首先,我需要理解用户的问题是什么。他们可能在使用RK3588适配Android开启EDP1显示时遇到了问题,或者在配置过程中需要验证EDP接口是否正常工作,所以想知道如何使用自测模式进行测试。 接下来,我需要回顾之前的对话历史。用户之前询问的是如何配置RK3588的EDP1显示,现在转向了自测模式。这说明他们可能已经按照之前的步骤进行了配置,但遇到了显示问题,或者希望在配置前先测试硬件是否正常。 EDP自测模式通常是芯片厂商提供的硬件自检功能,用于在不连接外部屏幕的情况下验证EDP接口的信号完整性。对于Rockchip的RK3588来说,可能有两种自测模式:色彩条测试和信号环回测试。用户可能需要知道如何启用这些模式,以及如何确认测试结果。 我需要检查RK3588的技术参考手册或相关文档,确认自测模式的具体实现方式和配置步骤。通常,这会涉及设备树配置、内核驱动支持以及通过sysfs或命令行工具触发测试模式。 用户可能需要具体的步骤,例如修改设备树、编译内核、使用adb命令等。此外,他们可能还会遇到常见问题,比如测试模式无法启动,或者测试结果异常,这时候需要提供一些排查方法,比如检查设备树配置、测量电压、查看内核日志等。 另外,用户可能不太清楚自测模式的作用和适用场景,所以需要简要说明自测模式的目的,比如硬件验证、故障排查等,并建议在哪些情况下使用。 需要确保回答结构清晰,分步骤说明配置方法、操作命令、结果验证以及问题处理。同时,保持语言简洁明了,避免使用过多专业术语,或者对术语进行适当解释,以便用户理解。 最后,提醒用户注意安全操作,比如在测量电压时避免短路,参考官方文档等,确保他们能够安全有效地进行测试。</think>以下为EDP自测模式的完整说明及操作指南: --- ### 一、EDP自测模式原理 1. 硬件验证模式:通过SoC内部生成测试图案,绕开GPU输出,直接验证: - EDP TX端信号完整性 - Lane差分对阻抗匹配 - 时钟同步能力 2. 两种主要模式: **色彩条测试**:输出红/绿/蓝/白标准色条 **环回测试**:TX→RX内部回环检测误码率 --- ### 二、RK3588自测模式启用方法 #### 步骤1:设备树配置 修改`rk3588-evb1-lp4.dtsi`: ```dts &edp1 { rockchip,test-pattern; // 启用测试图案发生器 rockchip,lane-count = <4>; // 必须实际物理线路一致 rockchip,edp-debug = <1>; // 开启调试接口 }; ``` #### 步骤2:内核驱动配置 ```bash make menuconfig ``` 激活调试选项: ``` Device Drivers -> Graphics support -> [*] Rockchip EDP Debug Support [*] Enable EDP Test Pattern Generator ``` #### 步骤3:模式选择 烧录固件后执行: ```bash # 色彩条模式(默认彩色条纹) adb shell "echo 1 > /sys/kernel/debug/dri/0/edp1_test_pattern" # 切换色条类型(0-7对应不同图案) adb shell "echo 3 > /sys/kernel/debug/dri/0/edp1_colorbar_mode" # 环回测试(需硬件支持) adb shell "echo 2 > /sys/kernel/debug/dri/0/edp1_test_pattern" ``` --- ### 三、结果验证标准 1. 色彩条模式合格表现: - 屏幕显示清晰无断裂的垂直色条 - 色块边界误差<0.5像素 - 无闪烁/雪花现象 2. 环回测试合格标准: ```bash adb shell dmesg | grep -i edp_loopback # 应显示"EDP loopback test passed, BER: 0.000000e+00" ``` --- ### 四、典型问题处理方案 #### 案例1:测试图案显示偏移 ```bash # 调整lane同步参数(单位:UI) adb shell "echo 0x11 > /sys/kernel/debug/dri/0/edp1_swing_level" ``` #### 案例2:环回误码率高 1. 测量物理层参数: - 差分对阻抗保持100Ω±10% - 时钟抖动<0.15UI 2. 调整预加重设置: ```bash # 设置预加重等级(0-3级) adb shell "echo 2 > /sys/kernel/debug/dri/0/edp1_pre_emphasis" ``` --- ### 五、示波器诊断要点 1. 关键测量点: ```text EDP_TX_CLKP/N --> 时钟信号完整性 EDP_TX_L0P/N --> 数据Lane质量 EDP_HPD --> 热插拔检测信号 ``` 2. 合格信号特征: - 差分幅值:200-400mVpp - 上升时间:<0.3UI - 眼图张开度:>0.6UI --- ### 六、安全操作规范 1. 上电顺序要求: ```mermaid graph LR A[上电3.3V] --> B[延迟10ms] B --> C[开启1.8V] C --> D[延迟100ms] D --> E[启动EDP控制器] ``` 2. ESD防护: - 操作前佩戴防静电手环 - 接口接触点维持0.5-0.7V偏置电压 建议配合使用RK官方调试工具`RKTools v2.8`中的EDP Analyzer模块,具体操作方法参见《RK3588_EDP_Debug_Manual》第5.2章节。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值