RK3566、RK3568、RK3588等在Android设置-显示中无法看到显示器的所有分辨率

问题现象

显示器支持4K、1080、720等一系列分辨率,但是在Android 的设置-显示-HDMI中无法显示到屏幕支持的分辨率。

问题分析及解决

1.检查EDID

EDID位置在
/sys/class/drm/card0-HDMI-A-1/edid
通过adb pull到电脑上,再通过EDID manager解析查看是否获取到的和显示器支持的一致
RK3566、RK3568、RK3588等在Android设置-显示中无法看到显示器的所有分辨率_第1张图片

如果一致继续步骤

2.如果EDID有上层不显示,则可以检查SDK根目录下device/rockchip/对应的产品目录中是否有resolution_white.xml的文件,如果有删掉这个文件就会显示出来你所有的分辨率了。RK3566、RK3568、RK3588等在Android设置-显示中无法看到显示器的所有分辨率_第2张图片

原因就是因为分辨率的白名单过滤文件(在这个文件里面的分辨率上层才能识别),不然上层有可能会被过滤掉一些分辨率。通过 resolution_white.xml 定义合法分辨率,只有包含在该 xml 中的分辨率才可以设置。若不存在该 xml 文件,不执行过滤。

你可能感兴趣的:(rk3566,android,嵌入式硬件)