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.

[参考译文] TCAN4550:Linux 驱动程序的统计启动问题

Guru**** 2585275 points
Other Parts Discussed in Thread: TCAN4550

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

https://e2e.ti.com/support/interface-group/interface/f/interface-forum/1541761/tcan4550-statistical-bring-up-issue-with-linux-driver

器件型号:TCAN4550


工具/软件:

嘿、团队、  

TCAN4550 在统计上会产生一些问题。

看起来 Linux 驱动器无法正确检测到 TCAN4550、然后初始化失败、从 dmesg 打印以下内容  

tcan4x5x spi0.0:接口名称 CAN2
tcan4x5x spi0.0:未找到时钟
tcan4x5x spi0.0:不是 tcan 器件 ffffff

我们认为晶体周围的问题可能是路由的原因,我们试图通过移除晶体本身并将 OSC2 连接到 GND(没有外部时钟)来重现它,但我们得到了不同的打印从 dmesg 如下所示  

那么它看起来,晶体不是“不是 tcan 器件 ffffffff “的 ROUT 原因

您是否知道哪些因素可能导致检测问题?

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

    尊敬的 Eytan:

    TCAN4550 在统计上出现问题。

    用“统计“你的意思是,有时它出现和被检测,而其他时候它不被检测?

    我们认为晶体周围的问题可能是路由的原因,我们试图通过移除晶体本身并将 OSC2 连接到 GND(没有外部时钟)来重现它,但我们得到了不同的打印从 dmesg 如下

    我是否可以正确地了解将 OSC2 引脚接地但没有向 OSC1 引脚提供单端时钟信号?

    如果是这样、数字内核将没有功能时钟来响应针对大于 0x0800 的寄存器或 MRAM 地址位置的任何 SPI 读取/写入事务。  

    地址在 0x0000 至 0x000C 范围内的器件 ID 和 SPI 接口 FIFO 寄存器不需要 OSC1/2 时钟、只需要 SPI 时钟返回值。

    如果 OSC1/2 时钟缺失或中断、数字内核和 MCAN 控制器将没有正常运行的时钟、与 0x0800 至 0x083C 以及 0x1000 至 0x10FC 范围内的寄存器进行 SPI 通信将失败。

    您是否知道哪些因素会导致检测问题?

    当您检测到这些故障时、能否在启动时验证 VSUP 和 VIO 电压电平?  除了由 VIO 供电的 OSC1/2 时钟电路外、器件由 VSUP 供电。  VIO 也用作数字 IO 电平转换电路的电压基准。

    验证晶体是否具有稳定的振荡并具有适当的负载电容器和串联阻尼电阻器元件。  更多相关信息、请参阅 TCAN455x 时钟优化和设计指南应用报告 (链接)

    此外、验证 SPI 格式是否满足数据表要求。  如果您能够读取器件 ID 来检测 TCAN 器件、那么您的 SPI 驱动器可能不存在问题、如果是、该问题可能与电源电压或时钟有关。

    此致、

    Jonathan