This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] DS90UB953-Q1:在 RK3588平台上使用 DS90UB953-Q1时 I2C 通信不稳定

Guru**** 2465980 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/interface-group/interface/f/interface-forum/1475667/ds90ub953-q1-i2c-communication-instability-with-ds90ub953-q1-on-rk3588-platform

器件型号:DS90UB953-Q1

工具与软件:

尊敬的 专家:

我使用以下配置工作的 FPD-Link III 摄像头系统:

  • 主持人: RK3588 (I2C7作为主器件)
  • 解串器: DS90UB954 (I2C 从器件地址: 0x30 )
  • 串行器: DS90UB953 (I2C 从器件地址: 0x18/0x19 )(__LW_AT__2摄像头)
  • 工作模式: CSI-2非同步反向通道模式

问题描述:
在初始化期间、DS90UB953串行器无法正确配置。 主要观察结果包括:

  1. 驱动程序初始化失败: DS90UB953初始化序列未完成、并且0x00无法可靠地读取器件 ID (例如寄存器)。
  2. I2C 地址不稳定:
    • i2cdetect -y 7间歇性显示地址 0x18 0x19 (有时标记为UU、有时丢失)。
    • 直接寄存器访问方式i2cget会导致偶发错误(Error: Read failed)。
  3. 链路质量问题: FPD-Link III 连接经常出现同步降压(通过dmesg日志观察到)。

附加数据:

  • 器件树配置片段(I2C 别名定义、时钟设置)。
  • dmesg日志显示初始化期间重复的超时错误。

指导请求:
您能否对以下方面提供见解?

  1. 器件树最佳实践:
    • slave-alias为双串行器设置正确配置条目。
    • 为了与 RK3588兼容、建议的 I2C 总线设置(时钟频率、噪声滤波器)。
  2. 非同步模式陷阱:
    • CSI-2反向通道初始化的关键时序要求。
    • 此模式下时钟延展或 ACK/NACK 处理的已知问题。
  3. 信号完整性验证:
    • 用于衡量 FPD-Link III 稳定性的关键参数。
    • 隔离 I2C 与链路层故障的调试步骤。

感谢您的专业知识和支持。

此致、

Qing

jinanhauxiangxikeyyouxiangongsi

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    请注意、在此论坛上、我们只能支持 FPD-Link 器件及其应用、而不能提供有关创建或实现驱动程序的指导。 话虽如此、只要在上电时配置合适的模式、953和954器件就能够自动锁定和通信。 首先确认953和954模式引脚均配置为选择非同步模式。 请注意、此模式需要向953串行器提供一个外部时钟来运行。  

    串行器别名在954的寄存器0x5C 中配置。 这是特定于端口的寄存器、因此请务必使用寄存器0x4C 选择预期的 RX 端口。 如果要实现时钟扩展、请验证系统中的所有器件(显示屏、成像仪、处理器等)是否都可以支持时钟扩展。  您可以通过读回寄存器0x4D 来检查953和954的锁定状态。 位0指示器件当前是否具有锁定、位4记录自上次读取寄存器以来的任何时刻是否失去锁定。 建议使用轻微的延迟多次读取寄存器0x4D、以验证锁定是否稳定。 稳定的锁定在任何时候都不会设置位4。