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.
工具与软件:
您好!
IAM 尝试测试 iMX8M 的 L6.6.23 CAN 接口、IAM 使用 TCAN4x5x CAN 驱动程序(tcan4x5x-core.c)。
CAN 驱动程序未正确初始化、 IAM 正对以下错误打印、
[ 2.216245] CAN:控制器局域网内核
[ 2.220636] NET:注册的 PF_CAN 协议系列
[225437] CAN:RAW 协议
[ 228416] CAN:广播管理器协议
[ 2.232612] CAN:NetLink 网关- max_hops=1
[ 2.732560] tcan4x5x spi1.0:MRAM 配置(2384)的总大小超过 MRAM (2048)
[2.739919] tcan4x5x:spi1.0的探测器出现故障、错误为-22
但是、当我 用以前的 BSP L6.1.36替换 TCAN4x5x CAN 驱动程序时、CAN 会被正确初始化、
在更新的驱动程序中进行了哪些主要更改、如何解决此问题。
此致、
Janani
尊敬的 Janani:
这是一个器件支持论坛、而不是 Linux 支持论坛、我们的专业知识是器件配置和物理层属性、而不是 Linux。
此驱动程序已更新并得到 Linux 社区的支持、对于驱动程序相关问题、您可能会从 Linux 支持论坛获得更好的支持。
为了使用该驱动程序初始化和配置 TCAN455x 器件、SPI 驱动程序需要能够正常工作并满足 TCAN4550 SPI 格式要求。 许多初始化错误是由于 SPI 读取/写入格式与 TCAN4550的要求不匹配、并且需要修改本地 SPI 驱动程序。 您应验证基本 SPI 读取/写入格式是否正确。
我在帖子中看到的另一个问题是 MRAM 配置的总大小超过2048字节的限制。 您尚未共享 MRAM config 语句、但需要减少 TX/RX 缓冲器/FIFO 元素、TX 事件 FIFO 元素、SID/XID 过滤器元素等的数量以适应 MRAM 空间。 如果您的配置超过2048字节、那么内存将回绕到开头、并覆盖一些其他内存元素、从而导致错误。
我对"BSP L6.1.36 CAN"没有任何了解或经验、无法解决这个问题。
如果您有任何与寄存器映射相关的器件配置问题、我将非常乐意为您提供帮助。
此致、
Jonathan