Linux 新手问题。
只是想知道 Linux 如何确定设备是哪个设备类?具体来说,当我插入条形码扫描器时,它如何知道它是一个 ttyACM 设备?我有一台适用于我的 Linux 操作系统的扫描仪,但无法识别新型号,所以我想知道我是否可以更改系统中某处的文件,告诉它将该扫描仪识别为 ttyACM0 并使用现有驱动程序。
最佳答案
USB 设备(我假设你的扫描仪是 USB)由 vendorId 和 productId(两个 16 位整数)标识,每个驱动程序用支持的供应商列表填充一个数组/prods id(创建关系 vendor:prod->driver),我猜想在编译时数组中的所有 id 都合并在一个列表中,然后在插入设备时用于查找搜索。
通常,您可以在插入设备后立即使用 dmesg
命令(或使用 lsusb
)查看连接设备的供应商和产品 ID。
对于 ttyACM
,请参阅 drivers/usb/class/cdc-acm.c 中的 acm_ids[]
小心摆弄设备驱动程序,即使是 ttyACM
终端接口(interface),只有当接口(interface) tty-> 硬件实现不佳时,一些命令可能会破坏硬件。
也许这个问题应该在Unix & Linux stackexchange
关于linux - Linux 如何确定设备类别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44254953/