首先定义不同的EDID,再使用TYPEC 转DP视频线,分别测试14寸和17寸:
14寸2560*1440,可以显示
17寸28801620,不可以显示,无法识别28801620
17寸EDID配置:
相同的EDID,和TYPEC 转DP线,在电脑上可以显示,再开发板上无法显示。
首先定义不同的EDID,再使用TYPEC 转DP视频线,分别测试14寸和17寸:
14寸2560*1440,可以显示
17寸28801620,不可以显示,无法识别28801620
17寸EDID配置:
相同的EDID,和TYPEC 转DP线,在电脑上可以显示,再开发板上无法显示。
请问在进行edid配置前,有读取到 2880*1620分辨率信息吗?
edid配置后可以读取到吗?
电脑可以读到,开发板读不到,或者读到一个其他分辨率。我的三星S24U dex模式都可以正常点亮输出这个屏幕。
请使用下列命令开启dp log
echo 8 > /proc/sys/kernel/printk
echo -n "file dp* +p" > /sys/kernel/debug/dynamic_debug/control
使用命令adb shell dmesg > dmesg_log.txt获取dmesg log并上传
Dear customer,
We have received the information you provided.
Please allow us some time to address it.
thanks
Dear customer
1.从log上看,读取到的分辨率是2048 * 1152,请问有试过这个分辨率吗,可以亮屏吗
1修改为 3或者5 再做尝试1.2048 * 1152,没有这样的分辨率的屏
2.怎么修改为 3或者5
3.EDID在上面回答github里有EDID.txt
我用了一个4K的屏幕,如果用电脑显示为60hZ 4K,可以驱动画面,但是用这个板子只可以 30Hz 4K驱动画面。如果用自定义EDID的显示屏25601440 60HZ或者28801620 60HZ,都无法显示画面,2560*1440 55HZ可以,这应该是内核没有开启高分辨率和速率。
Dear customer
rubikpi可以支持4k60hz,和2560* 1440 60HZ,我们有在标准的显示器上做过测试,请问您有连接标准显示器做测试吗?如果是自定义的话,建议修改timing参数,当前参数可能不兼容
您上文有提到“14寸2560*1440,可以显示”,请问这个是标准显示器吗,刷新率是多少?
显示屏1:明基PD2706U 4K 60HZ,使用这个PCBA ,可以点亮但只有30HZ
显示屏2:自定义EDID :14寸25601440 55Hz,使用这个PCBA ,可以点亮且55HZ
显示屏3:自定义EDID :15寸25601440 60Hz,使用这个PCBA ,无法点亮
显示屏4:自定义EDID :17寸2880*1620 60Hz,使用这个PCBA ,无法点亮
Dear customer,
HPD接入后,DP driver会执行以下流程
1.HDCP,暂时认为对本问题影响有限
→
2.EDID
这个比较重要,可以将读出的EDID细节解析出来进行check
方法:
cat /sys/devices/platform/soc@0/ae00000.qcom,mdss_mdp0/drm/card0/card0-DP-1/edid | hexdump -C | sed 's/.*: \([0-9a-f ]*\) .*/\1/g'
另外简单的分辨率支持情况可以通过以下节点查看
cat /sys/kernel/debug/drm_dp/edid_modes
→
3.link training
链路训练期间6490平台会和显示器用协商出最优分辨率进行链路训练,其目的是为了保证当前链路下数据传输的准确性。因此,DP数据链路中,包括接插端子,传输线等都会影响到link training的结果。当link training失败后,会降低分辨率继续训练。
一般简单的排除解决方法是换换传输线缆试试。
debug 方法
echo 8 > /proc/sys/kernel/printk
echo -n "file dp_aux.c +p" > /sys/kernel/debug/dynamic_debug/control
解析link training log,如果是这步有问题,可以在看到对应分辨率训练失败的log。
另外,6490平台不应该和笔记本类的设备对标,其display的原理不同,生态定位和使命也不同,高通平台不会支持所有分辨率。
明基屏
00000000 00 ff ff ff ff ff ff 00 09 d1 48 80 00 00 00 00 |…H…|
00000010 0b 22 01 04 b5 3c 22 78 3a 40 b5 ae 51 42 ad 26 |."…<“x:@..QB.&|
00000020 0f 50 54 a5 6b 80 d1 c0 81 c0 81 00 81 80 a9 c0 |.PT.k…|
00000030 b3 00 01 01 01 01 4d d0 00 a0 f0 70 3e 80 30 20 |…M…p>.0 |
00000040 35 00 55 50 21 00 00 1a 00 00 00 ff 00 45 54 36 |5.UP!..ET6|
00000050 33 52 30 31 30 35 30 43 4c 30 00 00 00 fd 00 18 |3R01050CL0…|
00000060 4c 1b 87 3c 00 0a 20 20 20 20 20 20 00 00 00 fc |L..<.. …|
00000070 00 42 65 6e 51 20 50 44 32 37 30 36 55 0a 01 17 |.BenQ PD2706U…|
00000080 02 03 34 f0 51 61 60 5f 5e 5d 10 1f 22 21 20 04 |..4.Qa`_^]..”! .|
00000090 13 12 11 03 02 01 23 09 07 07 83 01 00 00 67 03 |…#…g.|
000000a0 0c 00 10 00 38 78 e6 06 05 01 66 66 00 e3 05 c3 |…8x…ff…|
000000b0 00 e2 00 cf 56 5e 00 a0 a0 a0 29 50 30 20 35 00 |…V^…)P0 5.|
000000c0 55 50 21 00 00 1a 00 00 00 00 00 00 00 00 00 00 |UP!..|
000000d0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |…|
*
000000f0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 59 |…Y|
00000100
log:
有可能内核DP PHY 没有配置为 4-lane 模式
是不是读取EDID 3K 60HZ,但实际输出只有3K 30HZ
首先,客户提供的EDID数据异常,缺少000000e0段数据。尝试手动添加000000e0数据后仍然无法分析。
echo -n "file dp_aux.c +p" > /sys/kernel/debug/dynamic_debug/control
这个也没有生效,看不到link training过程。
从cat /sys/kernel/debug/drm_dp/edid_modes 结果来看,客户这个设备和平台协商后没有4k60的配置,有可能是EDID异常造成的。
我们也是第一次遇到https://people.freedesktop.org/~imirkin/edid-decode/这个网站无法解析的EDID,倒不是说这个明基的显示器不正规。不知道客户有没有办法调查下,这款显示器的4k60是否必须是开启了DSC压缩才行。
此款显示器没有DSC功能