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