====== GMSL调试的基本步骤 ====== [揖越原创文章,版权所有,转发请保留链接] 当进行控制器的解串器与串行相机的匹配时,我们一般推荐遵循下面的步骤。 ===== 了解硬件 ===== 了解你所使用的设备的串行器与解串器, * 它们是否匹配,GMSL1/2? * 它们的默认地址 * 默认的通讯方式, i2c/uart? * 它们的cfg的默认设置 * 它们的pwdn是否受控 * 供电轨是否正常 * 晶振是否正常工作 * POC是否受控制,如何控制(I2C,如max20087, GPIO) * ===== 初步检测与验证 ===== 硬件检测没有问题后,可以连接SOC或者控制器,做进一步的验证: * 使用i2c工具,如i2cdetect检测,是否可以正常检测到解串器。 * 如果默认工作模式(gmsl1/2, 3G/6Gbps)匹配,可检测到串行器。 * 如是CMOS上电即工作,应能检测到CMOS地址或EEPROM(如有) ===== 配置模式 ===== 如果串化器与解串器的模式不匹配,需要通过修改 cfg0/cfg1 的配置,或者通过软件配置。 ===== 确认配置 ===== 在串化器,解串器检测没有问题的前提下,读取串化器/解串器/CMOS的ID,改写一些寄存器,回读,确认I2C的读写通道正常。 ===== 配置串化器/解串器 ===== 根据相机模组的设计(图像格式/位宽等信息),配置串化器,解串器。建议打印 串化器/解串器的关键寄存器,包括 * 串化器的 pclk detect * 解串器的 link locked * 解串器的 video lock * 解串器的 video pipelock。 pclk detect没有时,检测 CMOS的 reset/pwdn/fsyn。 link locked 没有时,检测 gmsl的模式,link是否enable,POC参数是否合理等。 video lock没有时,需要检测 串化端 tx-id与接收端 rx-id是否匹配等。 以上都正常,而解串器无输出,检查是否启用了 frame sync 却没有正常同步。 ===== 实测解串器输出 ===== 为了解耦GMSL配置问题与 CSIRX的接收问题,建立设计PCB时,在解串器输出,即mipi信号线上预留测点。 在上述关键信号确认没有问题时,测量mipi的输出。 * mipi无输出时,修改串化器/解串器/CMOS的配置。 * mipi正常输出时,排查SOC接收端问题。 ===== CSIRX的问题排查 ===== 当确认解串器有输出,而应用接收不到数据时 * 确认接收端的配置,如 mipi的速率,lane数量符合, * vc(virtual channel)是否匹配。 * 图像格式是否匹配