[RK3399][Android8.1] 调试记录 --- LT9611驱动调试

article/2025/8/30 17:45:03

Platform: RK3399
OS: Android 8.1
 

现象:

使用LT9611实现MIPI TO HDMI输出功能,使用官方提供驱动后HDMI输出时有时无,并且很不稳定

 

问题1

1.开机HDMI没有输出,根据打印发现问题是HDMI输出为0,但是系统认为已经输出 ,原因是power on没有对HDMI是否输出进行判断,不论HDMI输出是否成功,bridge_is_o = true;

static int lt9611_poweron(struct lt9611 *lt)
{int ret;lt->bridge_is_on = true;DRM_ERROR("%s[%d]: lt->bridge_is_on=%d\n",  __FUNCTION__, __LINE__, lt->bridge_is_on);ret = lt9611_setup(lt, &lt->previous_mode);return ret;
}

解决方法:

1.对lt9611_setup进行判断,如果输出HDMI失败,lt->bridge_is_on = false;lt->disabled = true;如果输出成功,lt->bridge_is_on = true;lt->disabled = false;

2.增加延时,确保读取mipi信息准确 ,具体延时时间后续优化

static int lt9611_poweron(struct lt9611 *lt)
{int ret;lt->bridge_is_on = true;//JYXDRM_ERROR("%s[%d]: lt->bridge_is_on=%d\n",  __FUNCTION__, __LINE__, lt->bridge_is_on);msleep(200);//jyxret = lt9611_setup(lt, &lt->previous_mode);lt->disabled = false;if (ret){lt->bridge_is_on = false;//JYXlt->disabled = true;}return ret;
}

问题2

1.开机LT9611输出正常,插拔HDMI无图像,查看打印发现中断触发2次。

解决方法:

1.修改LT9611_irq_init,中断初始化函数,由于9611寄存器手册没有这些寄存器的具体信息,所以通过尝试发现RGO_8200_OFFSET_NA 寄存器的值与问题有关,将该寄存器值由0xfe修改为0xff,问题解决

static int lt9611_irq_init(struct lt9611 *lt)
{int ret;ret = lt9611_write_byte(lt, BANK_SELECT_ADDR, SYSTEM_CTRL0_BLOCK);if (ret)return ret;ret = lt9611_write_byte(lt, RGO_8258_OFFSET_NA, 0x0a); //Det HPDif (ret)return ret;ret = lt9611_write_byte(lt, RGO_8259_OFFSET_NA, 0x80); //HPD debounce widthif (ret)return ret;ret = lt9611_write_byte(lt, RGO_829E_OFFSET_NA, 0xf7); //vid chk clkif (ret)return ret;ret = lt9611_write_byte(lt, RGO_8200_OFFSET_NA, 0xff); //vid_chk_IRQ 0xff JYXif (ret)return ret;ret = lt9611_write_byte(lt, RGO_8203_OFFSET_NA, 0x3f); //Tx_detif (ret)return ret;ret = lt9611_write_byte(lt, RGO_8204_OFFSET_NA, 0xff); //clear0if (ret)return ret;ret = lt9611_write_byte(lt, RGO_8204_OFFSET_NA, 0xfe); //clear0if (ret)return ret;ret = lt9611_write_byte(lt, RGO_8207_OFFSET_NA, 0xff); //clear3if (ret)return ret;ret = lt9611_write_byte(lt, RGO_8207_OFFSET_NA, 0x3f); //clear3if (ret)return ret;return 0;
}

问题3

1.HDMI输出画面有 横条状抖动,下图左侧

解决方法:

1.确认不是RK输出MIPI时钟的问题

2.查看LT9611寄存器手册,找到MIPI rx的配置寄存器0X8106,经过一系列尝试,将mipi rx的参考电流由37.5uA修改为12.5uA,并且直接使能mipi rx 的高速模式,最终将0x8106配置为0x3f。图像不再出现横纹。

总结

目前该驱动修改仅处于可以使用的状态,后续需要向原厂提供技术支持,确保产品万无一失。


http://chatgpt.dhexx.cn/article/dEWeURvD.shtml

相关文章

一款mipi转lvds的lcd调试(lt8912b)

一款mipi转lvds的lcd调试(lt8912b) 客户调试一款mipi转lvds的屏,使用的转换芯片是lt8912b。现将调试过程做个记录。 这款芯片之前在别的客户项目上调试过,但是这个客户的板子上存在如下问题:配置好设备树和驱动后&…

Linux下lt9211调试总结

LT9211支持mipi转lvds,参考原理图如下 先拿到代码移植好后,接上屏幕看效果。 一开机,屏幕在不断的刷红绿蓝的图片,参考lcd的datasheet,如果没有检测到lvds信号,就在屏幕的测试模式。 说明,背光…

Linux下lt9611调试总结

lt9611是一款mipi转hdmi的芯片,项目中有使用到,分享下调试经验。 参考设计 要先拿到源码,然后进行调试。刚好代码默认有一份驱动,那不就折腾了。适当修改后,接hdmi屏幕进行测试,i2c能正常通信,…

正线性稳压器 (LDO)—— LT1763

正线性稳压器 (LDO) LT1763 500mA、低噪声、LDO 微功率稳压器 先上百科:LT1763百度百科 LT1763 LT1763 系列是微功率、低噪声、低压差稳压器。这些器件能够提供 500mA 的输出电流和一个 300mV 的压差电压。该系列专为在电池供电型系统中使用而设计,30…

第一颗国产HDMI 1.4 至 TTL / 2 端口 LVDS 芯片LT8619C

1. 说明 Lontium 的 LT8619C 是一款高性能 HDMI / 双模 DP 接收器芯片,符合 HDMI 1.4 规范。TTL 输出可支持 RGB、BT656、BT1120,输出分辨率可支持高达 4Kx2K30Hz。为了便于实现多媒体系统,LT8619C 支持 8 通道高质量 I2S 音频或 SPDIF 音频输…

互联网指标

1、LT arpu值、lt、ltv LT:Life Time,即生命周期。 理论上的计算: 互联网公司中,需要获取用户的“生命周期”,即用户使用该产品的时长,该时长应该是所有用户的平均时长(天数)。 …

html使用的特殊符号lt; gt: amp;等 意义对照

html使用的特殊符号< &gt: &amp;等 意义对照

软件需求跟踪矩阵例子

1&#xff0c;例子 2&#xff0c; 3 4&#xff0c;

PMP-5.项目范围管理-需求跟踪矩阵

需求跟踪矩阵是把产品需求从其来源连接到能满足需求的可交付成果的一种表格。使用需求跟踪 矩阵&#xff0c;把每个需求与业务目标或项目目标联系起来&#xff0c;有助于确保每个需求都具有商业价值。需求跟 踪矩阵提供了在整个项目生命周期中跟踪需求的一种方法&#xff0c;有…

目标跟踪入门

1.视觉目标跟踪基本流程与框架 视觉目标&#xff08;单目标&#xff09;跟踪任务就是在给定某视频序列初始帧的目标大小与位置的情况下&#xff0c;预测后续帧中该目标的大小与位置。 输入初始化目标框&#xff0c;在下一帧中产生众多候选框&#xff08;Motion Model&#xff0…

【测试】26.用户需求规格跟踪矩阵

1. 需求跟踪矩阵&#xff08;RTM&#xff09;有什么作用 a) 在需求变更、设计变更、代码变更、测试用例变更时&#xff0c;需求跟踪矩阵是目前经过实践检验的进行变更波及范围影响分析的最有效的工具。如果不借助RTM&#xff0c;则发生上述变更时&#xff0c;往往会遗漏某些连…

[需求管理-2]:什么是需求以及需求的收集与识别

作者主页(文火冰糖的硅基工坊)&#xff1a;文火冰糖&#xff08;王文兵&#xff09;的博客_文火冰糖的硅基工坊_CSDN博客 本文网址&#xff1a;[需求管理-2]&#xff1a;什么是需求以及需求的收集与识别_文火冰糖的硅基工坊的博客-CSDN博客 目录 第1章 什么是需求识别 第2章…

目标跟踪综述 (持续更新)

这几天对目标跟踪挺感兴趣的&#xff0c;但是在CSDN和知乎上面找的相关介绍资料都看的一知半解&#xff0c;所以自己找了一篇 2022-04-26 发表的综述文章作下笔记学习下。 目录 一、基于相关滤波的目标跟踪算法 1、相关滤波视频目标跟踪算法的框架 2、相关滤波目标跟踪算法…

如何进行需求分析?

这篇文章是软件工程系列知识总结的第四篇&#xff0c;前面的几篇文章聊了软件工程的基础理论和项目管理相关的知识。这篇文章&#xff0c;我会将软件工程中关于需求分析相关的知识进行总结梳理&#xff0c;并以自己理解的方式进行阐述。 需求分析在分析什么 做技术的同学对于…

问题需求跟踪工具ActionView

本文是应网友要求而写&#xff0c;ActionView 主要用于问题、需求的跟踪&#xff0c;适用的人群包括但不限于管理人员、开发人员、分析人员、测试人员和其他人员。 关于工具的说明 在群晖上安装 Docker &#xff0c;目前老苏主要用了两种方法&#xff1a; 群晖的 Docker 管理…

跟踪任何目标(想跟踪什么就跟踪什么)

结果展示 介绍 该项目是一个简单的跟踪工具&#xff0c;可以用于跟踪任何你感兴趣的东西。它提供了一个基于Web的界面&#xff0c;让用户可以轻松地创建和管理跟踪列表&#xff0c;同时也提供了一个RESTful API&#xff0c;可以方便地进行数据交互。 项目的原理是将用户需要跟…

需求管理二:需求的建模与跟踪

(原创文章&#xff0c;欢迎转载&#xff0c;请注明出处) 上回说到需求分析的一些内容。这回我总结总结我对需求建模和跟踪方面方法。 需求也是有模型的&#xff0c;有很多UML语言支持需求的建模&#xff0c;它不是UML的标准视图&#xff0c;而是扩展的视图。我喜欢用UML的En…

【项目管理】聊聊需求管理跟踪

在实际项目开发过程中&#xff0c;实现用户的需求的过程并非是按部就班一切按计划推进。特别是面对用户不确定性的需求变更导致开发实施推进的进度和成本增加的风险出现。因此如何有效管理需求&#xff0c;将管理用户需求的风险造成的损失降到可控范围之内&#xff0c;需要用到…

解密需求跟踪矩阵

解密需求跟踪矩阵 需求跟踪是需求管理的一项重要内容&#xff0c;具体指跟踪一个需求使用期限的全过程。在需求跟踪过程中&#xff0c;记录每个需求同系统元素之间联系的文档&#xff0c;我们称之为《需求跟踪矩阵》。 《需求跟踪矩阵》的作用 《需求跟踪矩阵》连接了需求与需…

目标跟踪技术

一、角跟踪 早期角跟踪雷达的精度依赖于所使用的波束的尺寸&#xff0c;现代大多是雷达系统通过利用单脉冲跟踪技术获得更优的角度测量结果。 跟踪雷达利用雷达波束内目标角度相对于天线主轴角度的偏移量来产生一个误差信号&#xff0c;这个误差信号去驱动伺服系统跟踪目标。 …