专栏底层软件camera attach vin错误的问题

camera attach vin错误的问题

解答中
Tiansheng2025-02-13
111
25

你好,


 


 


 


我这边在J6M上使用dummy驱动,遇到这样的问题


 




    1. 我是复用dummy的驱动实现,但是总是在hb_cam_init时遇到问题






    1. 使用的config文件如附件




 


 


这种配置下,hb_cam_init会返回-3601, logcat会得到如下的错误log


 


 


 



 


 


 



  1. 请问这个vio_ioctl_set_inter_attr fail是什么原因导致的?


  2. 我是否需要往配置文件中增加或者去除什么特殊的值?


  3. dummy相机驱动是否支持attach到deserial到mipi?


附件:
底层软件
征程6
评论4
0/1000
  • 费小财
    Lv.5
    你好,
    配置文件能发下吗,网页排版太乱了
    2025-02-13
    0
    2
    • Tiansheng回复费小财:

      好的,我发到帖子附件上了

      2025-02-13
      0
    • 费小财回复Tiansheng:

      好的,我先看下你配置的文件

      2025-02-14
      0
  • 费小财
    Lv.5
    另外,你这边跑dummy是想支持cim回灌,还是接入bypass的数据?

    dummy相机驱动支持attach到deserial到mipi
    2025-02-13
    0
    3
    • Tiansheng回复费小财:

      我这边是这样的,因为我们是正在测试sensor的数据。所以希望只是使用dummy节点去get_mipi_data,因此我只是希望让系统知道我图像的分辨率和数据格式,还有vc等信息,然后调用hb_cam_get_data获取mipi的数据。具体的配置启流我们会使用i2c自己去写入sensor,不知道这样操作是否可行?

      2025-02-13
      0
    • 费小财回复Tiansheng:

      接触器的配置呢,i2c写还是要通过so的方式去设置的?

      2025-02-14
      0
    • 费小财回复费小财:

      解串器

      2025-02-14
      0
  • 只蓝片羽
    Lv.1

    您好: 这里为什么说是"dummy"相机,看配置是用的 rutile 的自定义sensor库? 且填充了serial_addr与sensor_addr的,看上去是有实际的硬件的。 目前该报错应该是mipi init失败,怀疑des/sensor初始化时没有做好相应的配置。

    2025-02-13
    0
    6
    • Tiansheng回复只蓝片羽:

      因为我这边有把dummy的实现单独拿出来编译了,换了一个名字。mipi init失败是指的是,mipi没有检测到LP所以导致的问题吗?所以我需要修改驱动的时序来解决这个问题,这个理解对吗?

      2025-02-13
      0
    • Tiansheng回复只蓝片羽:

      因为在J5上我用了现在是配置的顺序,是可以工作的,是不是在J6上有新的要求和检查(比如说要求LP,这个在J5上的要求也是相同的吗?),所以导致了mipi init失败吗?

      2025-02-13
      0
    • 只蓝片羽回复Tiansheng:

      是的,如果是dummy改的话,应该是要在init里将deserial进行配置,需要要init时为LP状态。另外你们使用的硬件是你们自己做的么?接的哪个rx,mipi rx对应的是cphy还是dphy连接?

      2025-02-13
      0
    • 只蓝片羽回复Tiansheng:

      目前看上去是的,LP状态不对,需要确认所用的mipi对不对,另外使用的phy是dphy么? 4lane连接?

      2025-02-13
      0
    • Tiansheng回复只蓝片羽:

      我们的设备接的是RX0, DPHY, 4Lane, 会有两路vc, vc0和vc1.

      2025-02-17
      0
    • Tiansheng回复只蓝片羽:

      这是dmesg log,看起来就是没有检测到stop state?想问一下,我是否可以通过读取某个96712的寄存器,来确认MIPI的状态是否在LP?

      2025-02-17
      0
  • 费小财
    Lv.5

    看了配置文件,确认一下,这个环境下是有sensor还是没有sensor的?

    2025-02-18
    0
    10
    • Tiansheng回复费小财:

      有sensor的,串行器9295在0x40, sensor地址0x62,我这边i2c读写都可以的

      2025-02-18
      0
    • Tiansheng回复费小财:

      我想确认一下,在vio_init和cam_init的时间点,需要serdes处于什么样的状态?是要把MIPI-CSI的流打开还是关闭?wait phy stop state error是什么原因?


      因为我这边执行这个init会卡住一段时间,我觉得应该是正在等待MIPI的某种状态,最后timeout了错误,但是我这边不知道要如何调整serdes或者sensor的配置去满足这种状态

      2025-02-18
      0
    • 费小财回复Tiansheng:
      从你出错的日志看,mipi是没有获取到解串器的clk信号的,你有最新的J6的配置文件吗,能不能基于J6的配置文件试试的
      你既然是有sensor的,sensor是哪个模组的
      2025-02-18
      0
    • 费小财回复Tiansheng:

      camera init的时候要让serdes处于ready状态,卡主是因为mipi在 check stop有个retry机制吧,你这个错误像是mipi的初始化就异常的,最好是能基于J6的配置文件重新再试试

      2025-02-18
      0
    • Tiansheng回复费小财:

      我想确认一下,因为我是在进行cam_init,这个时候我也需要MIPI有CLK信号吗?还没有start。


      还有就是是否有max96712的寄存器,可以检查这个MIPI CLK和LP的状态的寄存器?我可以用来debug这个状态?

      2025-02-18
      0
    • 费小财回复Tiansheng:

      这个就是mipi协议的LP-HS的一个过程,是需要等到stop state才开始的,你这个错误看上去就是mipi初始化异常了,或者用错了rx

      2025-02-19
      0
    • Tiansheng回复费小财:

      那我想换个思路,如果我是没有sensor连在上面的情况下,想要vio_init和cam_init,要怎么做才可以实现呢?我尝试了写max96712的0x8a0的寄存器写成0x84去强制输出mipi clk,但是看起来也是不行的

      2025-02-19
      0
    • 费小财回复Tiansheng:

      应该sensor name 选择dummystd, 另外你可以读下deserial的stream on寄存器,看看有没有成功,通过可以参考下J6 96712用的是force stream on

      2025-02-20
      0
    • Tiansheng回复费小财:

      deserial的stream on寄存器是哪个寄存器?可以告诉我具体的值,或者名字吗?96712的force stream on是哪个寄存器?0x8A0的force_csi_out _en?

      2025-02-20
      0
    • 费小财回复Tiansheng:

      0x08a0, 0x80, 0x80对0x8a0

      2025-02-25
      0