0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Linux下lt9611调试总结

天浩旭科技 2023-05-04 16:05 次阅读

lt9611是一款mipihdmi芯片,项目中有使用到,分享下调试经验。

参考设计

wKgZomRTXsWASqoOAAIrn3QfZvE494.png

要先拿到源码,然后进行调试。刚好代码默认有一份驱动,那不就折腾了。适当修改后,接hdmi屏幕进行测试,i2c能正常通信,也能正确解码前端的mipi信号,感觉成功了一半。屏幕也提示检测到了hdmi信号,但黑屏。先让ic进入自测试模式,看输出正不正常,屏幕提示超出范围。

看log,有如下不正常打印


[ 211.152990] [LT9611] lt9611_pll() hdmi pll unlocked, reset pll
[ 211.163594] [LT9611] lt9611_pll() hdmi pll unlocked, reset pll
[ 211.172848] [LT9611] lt9611_pll() hdmi pll unlocked, reset pll
[ 211.182127] [LT9611] lt9611_pll() hdmi pll unlocked, reset pll
[ 211.193973] [LT9611] lt9611_pll() hdmi pll unlocked, reset pll

后来,测量27M的晶振,发现没有正常起振(27M的正旋波),跟参考设计对比,发现贴的电容不是15pF,导致不能起振。

修改后,ic自测显示正常,屏幕也能显示正确的内容。

测试的时候,又出现的随机黑屏的情况,估计得重试调ic的参数。这一步得留给fae了,因为拿不到寄存器说明手册。

硬件检查点:

2k的精密电阻要贴上

27M的晶体要正常起振,由于示波器的探针跟地相当于一个小电容,测量1M电阻的波形时,相当于在15pF的电容处又并了一个电容,

会导致波形出不来,当然手上的示波器比较低端,不确定高端的示波器能不能量出来。

参考正确的打印

[ 1475.290967] [LT9611] lt9611_mipi_input_digtal() lt9611 set mipi lanes = 0
[ 1475.302923] [LT9611] lt9611_mipi_input_digtal() lt9611 set mipi ports = 1
[ 1475.309880] [LT9611] lt9611_mipi_input_digtal() lt9611.mipi_mode = dsi
[ 1477.356611] [LT9611] lt9611_video_check() lt9611.mipi_mode = dsi
[ 1477.363822] [LT9611] lt9611_video_check() h_act_a = 1920, h_act_b = 0, v_act = 1080, v_tal = 1125:
[ 1477.372935] [LT9611] lt9611_video_check() mipi_video_format: a
[ 1477.378984] [LT9611] lt9611_video_check() Video_Check = video_1920x1080_60Hz
[ 1477.386249] [LT9611] lt9611_pll() set rx pll = 148500
[ 1477.398933] [LT9611] lt9611_pll() pcr_m = 37, hdmi_post_div = 2
[ 1477.412925] [LT9611] lt9611_pll() hdmi pll locked
[ 1477.417829] [LT9611] lt9611_mipi_pcr() POL = 0, 0
[ 1477.428349] [LT9611] show_timing() video_format:1920X1080, pclk_khz:148500
[ 1477.435381] [LT9611] show_timing() hfp:88, hbp:148, hs:44, htotal:2200
[ 1477.442130] [LT9611] show_timing() vfp:4, vbp:36, vs:5, htotel:1125
[ 1477.458495] [LT9611] lt9611_audio_init() Audio inut = I2S 2ch
[ 1477.498075] [LT9611] lt9611_init() ############lt9611 initial End##################
[ 1477.507443] [LT9611] lt9611_init() Detect hpd High
[ 1477.588316] [LT9611] lt9611_frequency_meter_byte_clk() port A byte clk = 126270

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 芯片
    +关注

    关注

    450

    文章

    49489

    浏览量

    416365
  • 嵌入式
    +关注

    关注

    5036

    文章

    18768

    浏览量

    297353
收藏 人收藏

    评论

    相关推荐

    调试模式如何调试看门狗?

    大家在调试GD32 MCU系统的时候,若开了看门狗外设,是否会碰到进入调试模式看门狗就会咬狗造成无法调试的问题?
    的头像 发表于 02-23 09:30 1039次阅读
    <b class='flag-5'>调试</b>模式<b class='flag-5'>下</b>如何<b class='flag-5'>调试</b>看门狗?

    龙讯芯片视频转接节总结

    LT9211/LT9611/LT9611UXC/LT8911EX/LT8918L/LT8918/
    的头像 发表于 02-01 14:15 472次阅读
    龙讯芯片视频转接节<b class='flag-5'>总结</b>

    如何使用linuxgdb来调试python程序

    如何使用linuxgdb来调试python程序  在Linux,可以使用GDB(GNU调试
    的头像 发表于 01-31 10:41 1815次阅读

    linux用gdb调试遇到函数调用怎么办?

    linux用gdb调试遇到函数调用怎么办? 在Linux上使用GDB调试时,遇到函数调用是一个常见的情况。函数调用可能涉及到多个函数、多个文件,这就需要我们仔细审查代码,理解函数之间的
    的头像 发表于 01-31 10:33 572次阅读

    Linux基本命令总结

    都说Linux命令多,实际工作中我们又有多少命令会接触用到呢?本文跟大家分享Linux运维工作中常用的600个命令,可以说这些命令是伴随着大家一生的运维生涯了,看看大家有哪些还没用过的!
    的头像 发表于 01-11 10:32 860次阅读

    如何利用Linux的工具来自动生成实用的状态机框架?

    (Finite State Machine)&lt;/span>,是一种应用非常广泛的软件设计模式(Design Pattern)。本文介绍如何构建基于状态机的软件系统,以及如何利用Linux的工具来自动生成实用的状态机框架。
    的头像 发表于 11-25 14:15 1074次阅读
    如何利用<b class='flag-5'>Linux</b><b class='flag-5'>下</b>的工具来自动生成实用的状态机框架?

    epoll的LT模式总结

    epoll的触发模式是个引发讨论非常多的话题,网络上这方面总结的文章也很多,首先从名字上就不是很统一,LT模式常被称为水平触发、电平触发、条件触发,而ET模式常被称为边缘触发、边沿触发等,这些都是从
    的头像 发表于 11-10 15:35 390次阅读

    Linux 内存管理总结

    一、Linux内存管理概述 Linux内存管理是指对系统内存的分配、释放、映射、管理、交换、压缩等一系列操作的管理。在Linux中,内存被划分为多个区域,每个区域有不同的作用,包括内核空间、用户空间
    的头像 发表于 11-10 14:58 418次阅读
    <b class='flag-5'>Linux</b> 内存管理<b class='flag-5'>总结</b>

    gdb动态调试演示

    今天要分享给大家的是gdb动态调试( 动态调试就是在不终止正在运行的进程的情况,来对这个正在运行的进程进行调试,我一般习惯称之为在线调试
    的头像 发表于 11-01 15:28 577次阅读
    gdb动态<b class='flag-5'>调试</b>演示

    ADMV9611: 60 GHz Millimeterwave Short Data Link Data Sheet ADMV9611: 60 GHz Millimeterwave Short Data Link Data Sheet

    电子发烧友网为你提供ADI(ADI)ADMV9611: 60 GHz Millimeterwave Short Data Link Data Sheet相关产品参数、数据手册,更有ADMV9611
    发表于 10-13 18:53
    ADMV<b class='flag-5'>9611</b>: 60 GHz Millimeterwave Short Data Link Data Sheet ADMV<b class='flag-5'>9611</b>: 60 GHz Millimeterwave Short Data Link Data Sheet

    linux调试core dump的方法

    下面说明一 linux调试 core dump 方法。 dmesg+addr2line调试 先介绍 2 个 linux 命令: dme
    的头像 发表于 10-08 16:13 535次阅读

    西门子S120(5#桥)调试总结

    西门子变频器S120系列调试总结,对于初学者有帮助。
    发表于 09-20 15:46 3次下载

    嵌入式Linux命令总结

    嵌入式Linux命令总结
    发表于 09-19 16:30 428次阅读

    Linux使用技巧总结

    浩道经常会遇到读者说怎么才能短时间内成长为Linux高手。其实我想说:滴水穿石非一日之功,冰冻三尺非一日之寒!善于总结Linux使用技巧,可以大大提升工作效率。高手与普通用户的区别往往就是这些技巧的熟悉程度。今天浩道跟大家分享
    发表于 09-14 09:49 388次阅读

    Linux GCC的编译

    一、Linux 多文件编译 在上一篇 Linux 的 C 编程我们知道了 Linux 的编
    的头像 发表于 09-11 15:18 1961次阅读
    <b class='flag-5'>Linux</b> <b class='flag-5'>下</b>GCC的编译