Project

General

Profile

Actions

新建 #163

open

rk3588 can 和canfd 怎么切换

Added by 余 顺 over 1 year ago. Updated 8 months ago.

Status:
新建
Priority:
普通
Assignee:
-
Category:
can
Target version:
Start date:
12/12/2022
Due date:
% Done:

0%

Estimated time:

Description

版型:rd-rk3588

系统:ubuntu

需求:切换can和canfd

尝试:参考源码目录rk3588-linux\docs\Common\CAN 相关文档,未切换成功 见附件Rockchip_Develop_Guide_Can_CN.pdf 和Rockchip_Develop_Guide_CAN_FD_CN.pdf


Files

Updated by 余 顺 over 1 year ago

首先查看sdk 源码确认配置的是can 还是canfd
1,根据节点名查找对应驱动

2. grep "can0" -nr rk3588* 查找对应的定义,根据查找到的看是对应的哪个驱动名称,ps:若是编译过对应的版型可以查看vim .rd-rk3588.dtb.dts.tmp,编译文件更方便对比

3. 查看驱动,附件中已经说明驱动路径,就不再找了 (文档说明是在linux 内核版本4,1内核 ,在5.10的内核版本不能参考如下linux4.19的修改)

4. 5,。10 内核修改方式

canfd修改dts 节点 can0/1节点对应的驱动为canfd-1.0 即可

内核配置不用修改,对应的canfd。驱动以兼容 can 和 cnafd 主要通过 dts 中的 compatible 做区分

5. 4.19 内核修改方式

a,查看驱动对应的是哪个grep "can-2.0" ./ -nr 如下则是canfd

b如下可以看到can的是can-1.0

这样就可以判断具体板子的是配置的can还是canfd了

canfd修改为can的话,
首先改can0节点对应的驱动为can-1.0

接着通过查看驱动对应的Makefile 文件,找到在menuconfig 中的定义

在sdk 执行./build.sh menuconfig 修改rk3588 内核配置 加载对应的驱动
配置4.19的内核,但此处图形化界面显示为5.10 内核 原因 只是做一个示例 可忽略

保存后再全局编译即可切换为can, ps:需要注意只能存在can 或者canfd 的其中一种模式

Actions #2

Updated by 余 顺 8 months ago

下图 为 linux5.10 内核的can fd 与 can 兼容的

Actions

Also available in: Atom PDF