微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在 Yocto/BeagleBoneBlack 中激活总线支持?

如何解决如何在 Yocto/BeagleBoneBlack 中激活总线支持?

我正在尝试使用 beagleboneblack 为 Yocto 提供总线支持

我通过 bitbake -c menuconfig virtual/kernel 进行了内核配置,并将以下驱动程序添加到内核中。

  • 原始 CAN 协议
  • 广播管理器 CAN 协议
  • CAN 网关/路由器
  • 支持 Netlink 的平台 CAN 驱动程序
  • 可以进行位定时计算
  • TI 高端 CAN 控制器

并将 IMAGE_INSTALL_append = " can-utils iproute2" 添加local.conf

当我的 yocto 启动时,串行控制台似乎显示

[    1.239593] can: controller area network core (rev 20170425 abi 9)
[    1.246828] NET: Registered protocol family 29
[    1.251438] can: raw protocol (rev 20170425)
[    1.255758] can: broadcast manager protocol (rev 20170425 t)
[    1.261517] can: netlink gateway (rev 20190810) max_hops=1

所以,我认为内核有 can driver 和 socketcan。

但是没有罐头装置。

root@beaglebone:~# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNowN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: eth0: <broADCAST,MULTICAST,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 78:a5:04:b4:18:cf brd ff:ff:ff:ff:ff:ff
    inet 192.168.100.19/24 brd 192.168.100.255 scope global eth0
       valid_lft forever preferred_lft forever
    inet6 240b:251:520:5b00:7aa5:4ff:feb4:18cf/64 scope global dynamic mngtmpaddr
       valid_lft 2591946sec preferred_lft 604746sec
    inet6 fe80::7aa5:4ff:feb4:18cf/64 scope link
       valid_lft forever preferred_lft forever
3: sit0@NONE: <NOARP> mtu 1480 qdisc noop state DOWN group default qlen 1000
    link/sit 0.0.0.0 brd 0.0.0.0

你能告诉我如何在 ip a 中找到设备吗?

BR,豆豆

解决方法

AM335X 有 Bosch C_CAN/D_CAN 控制器,但没有 TI 高端 CAN 控制器。 所以我从 bitbake -c menuconfig virtual/kernel 更改了内核配置。

我修改了设备树并重建了内核。

然后,我可以找到 can0 和 can1。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。