Linux:如何确保驱动程序已加载? (或者强制加载?)

Linux:如何确保驱动程序已加载? (或者强制加载?)

我的设备使用的芯片需要特定的 USB 驱动程序。据说是在v5.5之后的Linux内核中。我使用的是带有 6.1.21-v8+ 内核的 RPi,因此应该包含驱动程序。当我插入设备时,/dev/ 中没有显示任何内容。 (我用来ls -lartR|cat -n|tail -n1计算设备的数量。)据说它显示为 ttyxx 设备,但当我插入它时,我没有看到新的设备。

我使用了 lsusb 和 grep,但未列出驱动程序。我如何知道驱动程序是否正在加载?即使它“在内核中”,是否有可能它不包含在基本安装中?如何确保内核位于此特定发行版或安装映像中并且已加载?

如需更多参考,这是 RasPiOS。我在 Unix 和 Linux 部分询问是因为我在 Linux 非 Pi 系统上遇到了问题,如果这个系统出现问题,可能必须使用该系统。驱动程序是 Proflic USA 的 PL2303GL,可以从以下位置下载并构建此页面上的链接。它包含用于在最高 5.4 的内核上构建的文件夹(我已经尝试构建它 - 总是出错),但由于它是从 5.5 开始包含的,所以没有任何东西可以在较新的内核上构建它。我尝试连接的设备是 Netgate SG-1100,它是 pfSense 防火墙。我对这样做的替代方案持开放态度。

答案1

通过读取 /proc 中的 config.gz 文件,您可以发现内核是支持该设备构建的

zgrep USB_SERIAL_PL2303 /proc/config.gz

一些发行版将内核配置放在 /boot 目录中

grep USB_SERIAL_PL2303 /boot/config-*

如果模块存在,您可以使用lsmod命令查看所有加载的模块

dmesg如果前面的步骤失败,我还建议从输出中查找信息。

相关内容