Firefly开源社区

打印 上一主题 下一主题

[Android] 使用3588S-PC HDMI驱动4032x756 分辨率的屏幕,可以正常识别读取EDID信息,无显示

26

积分

0

威望

0

贡献

技术小白

积分
26

使用3588S-PC HDMI驱动4032x756 分辨率的屏幕,可以正常识别读取EDID信息,无显示

发表于 2023-7-5 11:11:32      浏览:1562 | 回复:2        打印      只看该作者   [复制链接] 楼主
  • 固件类型: 自行编译的固件
  • SDK包名称: firefly_rk3588_android12.0_git_20220311
  • SDK更新到哪个COMMIT: 0000-00-00 00:00:00
  • SDK修改内容: 无修改
  • Log日志: log.zip
问题描述及复现步骤:
如题,系统使用Android12,开发板使用ROC-RK3588S-PC 驱动我们自己的定制的屏幕,我们的屏幕分辨率为:4032x756 ,通过scrcpy 查看发现屏幕的可可以正常识别,但是没有显示。




通过shell 命令查看:
1. 可以读出EDID 表
  1. roc_rk3588s_pc:/ $ busybox hexdump /sys/class/drm/card0-HDMI-A-1/edid
  2. 0000000 ff00 ffff ffff 00ff e430 2699 8d2a 0134
  3. 0000010 2034 0401 43a2 780d ac18 a6b4 4e54 269b
  4. 0000020 4a0c 0052 0000 0001 0001 0001 0001 0001
  5. 0000030 0001 0001 0001 399a b4c0 f4f0 2016 2864
  6. 0000040 00c2 7e87 0020 1c00 0000 1000 0000 0000
  7. 0000050 0000 0000 0000 0000 0000 0000 1000 0000
  8. 0000060 0000 0000 0000 0000 0000 0000 0000 1000
  9. 0000070 0000 0000 0000 0000 0000 0000 0000 3300
  10. 0000080
复制代码
2.可以读取到分辨率
  1. roc_rk3588s_pc:/ $ cat /sys/class/drm/card0-HDMI-A-1/modes
  2. 4032x756
复制代码
3.查看HDIM状态
  1. cat /sys/kernel/debug/dw-hdmi0/status
  2. PHY: enabled                    Mode: DVI
  3. TMDS Mode Pixel Clk: 147460000Hz                TMDS Clk: 147460000Hz
  4. ALLM: 0
  5. Color Format: RGB               Color Depth: 8 bit
  6. Colorimetry: ITU.BT709          EOTF: Off
复制代码

4. 可以读取到屏幕相关信息:
  1. cat /d/dri/0/summary
  2. Video Port0: ACTIVE
  3.     Connector: HDMI-A-1
  4.         bus_format[100a]: RGB888_1X24
  5.         overlay_mode[0] output_mode[f] color_space[0], eotf:0
  6.     Display mode: 4032x756p45
  7.         clk[147460] real_clk[147460] type[48] flag[6]
  8.         H: 4032 4132 4172 4212
  9.         V: 756 768 770 778
  10.     Cluster0-win0: ACTIVE
  11.         win_id: 0
  12.         format: AB24 little-endian (0x34324241)[AFBC] SDR[0] color_space[0] glb_alpha[0xff]
  13.         rotate: xmirror: 0 ymirror: 0 rotate_90: 0 rotate_270: 0
  14.         csc: y2r[0] r2y[0] csc mode[0]
  15.         zpos: 0
  16.         src: pos[0, 0] rect[1920 x 1080]
  17.         dst: pos[20, 7] rect[3991 x 742]
  18.         buf[0]: addr: 0x00000000ef3ef000 pitch: 7680 offset: 0
  19. Video Port1: DISABLED
  20. Video Port2: DISABLED
  21. Video Port3: DISABLED
复制代码
查看上面信息发现“src: pos[0, 0] rect[1920 x 1080]”和“dst: pos[20, 7] rect[3991 x 742]” 应该是有问题的。
5.使用dmesg| grep "vop" 发现使用可以正常分配,但是会报
"rockchip-dmc dmc: failed to get vop bandwidth to dmc rate"
"rockchip-dmc dmc: failed to get vop pn to msch rl"

能否帮忙分析一下原因,或者提供一下解决思路。


log.zip

1.37 KB, 下载次数: 0, 下载积分: 灯泡 -1 , 经验 -1

回复

使用道具 举报

1040

积分

1

威望

3

贡献

官方团队

Rank: 9Rank: 9Rank: 9

积分
1040
发表于 2023-7-5 11:34:44        只看该作者  沙发
1 特殊的分辨率应该要驱动调试,可参考sdk下的RKDocs\common\display开发
2 可以了解下是否是显示分辨率白名单过滤问题 device/rockchip/common/resolution_white.xml
回复

使用道具 举报

46

积分

0

威望

0

贡献

技术小白

积分
46
发表于 2023-9-1 16:46:56        只看该作者  板凳
超过3840的屏,应该按照8K来配置,使用vp0分配给HDMI,VP1不要分配
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

友情链接 : 爱板网 电子发烧友论坛 云汉电子社区 粤ICP备14022046号-2
快速回复 返回顶部 返回列表