新建 #163
openrk3588 can 和canfd 怎么切换
0%
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 2 years ago
- File clipboard-202212122041-leqtp.png clipboard-202212122041-leqtp.png added
- File clipboard-202212122044-c1hul.png clipboard-202212122044-c1hul.png added
- File clipboard-202212122048-wn3pa.png clipboard-202212122048-wn3pa.png added
- File clipboard-202212122052-xfq9w.png clipboard-202212122052-xfq9w.png added
- File clipboard-202212122054-kd50p.png clipboard-202212122054-kd50p.png added
- File clipboard-202212122055-rvgmk.png clipboard-202212122055-rvgmk.png added
- File clipboard-202212122102-ufh2r.png clipboard-202212122102-ufh2r.png added
- File clipboard-202212122114-z9aiy.png clipboard-202212122114-z9aiy.png added
- File clipboard-202212122116-1jvrj.png clipboard-202212122116-1jvrj.png added
首先查看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 的其中一种模式
Updated by 余 顺 over 1 year ago
下图 为 linux5.10 内核的can fd 与 can 兼容的