我似乎缺少几个内核模块。具体来说,can
并且can_dev
。当我运行modprobe can
或 时,模块不会加载modprobe can-dev
。
我认为这是因为模块不在目录中
[/lib/modules/4.19.94-ti-r42/kernel/drivers/net/can]$ ls
slcan.ko.xz spi usb vcan.ko.xz
唯一加载的 CAN 模块是can_raw
,它似乎与 SocketCAN 一起工作得很好。我的问题是我正在尝试使用价值CAN这取决于 2 个模块。
我尝试下载内核,当我运行时menuconfig
,我没有看到 CAN 模块。
我不知道如何继续。
以下是菜单配置选择。
--- CAN bus subsystem support
<M> Raw CAN Protocol (raw access with CAN-ID filtering)
<M> Broadcast Manager CAN Protocol (with content filtering)
<M> CAN Gateway/Router (with netlink configuration)
CAN Device Drivers --->
<M> Virtual Local CAN Interface (vcan)
<M> Virtual CAN Tunnel (vxcan)
<M> Serial / USB serial CAN Adaptors (slcan)
<M> Platform CAN drivers with Netlink support
[*] CAN bit-timing calculation (NEW)
< > Support for Freescale FLEXCAN based chips (NEW)
< > Aeroflex Gaisler GRCAN and GRHCAN CAN devices (NEW)
< > TI High End CAN Controller (NEW)
< > Bosch C_CAN/D_CAN devices (NEW) ----
< > Bosch CC770 and Intel AN82527 devices (NEW) ----
< > IFI CAN_FD IP (NEW)
< > Bosch M_CAN devices (NEW)
< > Renesas R-Car CAN controller (NEW)
< > Renesas R-Car CAN FD controller (NEW)
< > Philips/NXP SJA1000 devices (NEW) ----
< > Softing Gmbh CAN generic support (NEW)
CAN SPI interfaces --->
CAN USB interfaces --->
[ ] CAN devices debugging messages (NEW)
答案1
这显示模块以及我需要选择什么才能创建它们。我搜索了 can.ko 和 can-dev.ko
Platform CAN drivers with Netlink support
modulename: can-dev.ko
configname: CONFIG_CAN_DEV
Linux Kernel Configuration
└─> Networking support
└─> CAN bus subsystem support
└─> CAN Device Drivers
└─> Platform CAN drivers with Netlink support
CAN bus subsystem support
modulename: can.ko
configname: CONFIG_CAN
Linux Kernel Configuration
└─> Networking support
└─> CAN bus subsystem support
根据我收集的信息,我将不得不重新编译内核来创建模块。