我是靠谱客的博主 单身戒指,最近开发中收集的这篇文章主要介绍[RK3399][Android7.1] 调试笔记 --- 调换dsi和dsi1两路通道数据,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

Platform: RK3399
OS: Android 7.1
Kernel: v4.4.83

背景:
此问题是网友Brian遇到的,需求如下:
点一个2560*1600的mipi屏,用的dsi和dsi1,这个屏有8 lane,有两个TCON IC,相当于两个屏了,一组DSI对应一个TCON,现在图像左右反了,所以想左右对调下。

相当于用的是dual-channel
在这里插入图片描述
具体配置可参考rk文档。


解决方法:

$ git diff drivers/gpu/drm/rockchip/rockchip_drm_vop.c
diff --git a/drivers/gpu/drm/rockchip/rockchip_drm_vop.c b/drivers/gpu/drm/rockchip/rockchip_drm_vop.c
index 18eac37..ae6659c 100644
--- a/drivers/gpu/drm/rockchip/rockchip_drm_vop.c
+++ b/drivers/gpu/drm/rockchip/rockchip_drm_vop.c
@@ -2617,8 +2617,7 @@ static void vop_crtc_enable(struct drm_crtc *crtc)
                VOP_CTRL_SET(vop, mipi_dclk_pol, dclk_inv);
                VOP_CTRL_SET(vop, mipi_dual_channel_en,
                        !!(s->output_flags & ROCKCHIP_OUTPUT_DSI_DUAL_CHANNEL));
-               VOP_CTRL_SET(vop, data01_swap,
-                       !!(s->output_flags & ROCKCHIP_OUTPUT_DSI_DUAL_LINK));
+               VOP_CTRL_SET(vop, data01_swap, 1);
                break;
        case DRM_MODE_CONNECTOR_DisplayPort:
                VOP_CTRL_SET(vop, dp_dclk_pol, 0);

如果不想改VOP,那么改屏的寄存器也是可以的。


参考:
Rockchip_DRM_Panel_Porting_Guide_V1.6_20190228.pdf

最后

以上就是单身戒指为你收集整理的[RK3399][Android7.1] 调试笔记 --- 调换dsi和dsi1两路通道数据的全部内容,希望文章能够帮你解决[RK3399][Android7.1] 调试笔记 --- 调换dsi和dsi1两路通道数据所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(47)

评论列表共有 0 条评论

立即
投稿
返回
顶部