如何从手动输入的 USB 串行驱动程序中删除设备 ID

如何从手动输入的 USB 串行驱动程序中删除设备 ID

我之前遵循这个问题的答案:将具有自定义 PID 的 USB 串行设备连接到嵌入式上的 ttyUSB0

现在,我需要恢复该步骤,以便每次连接时我回显到 new_id 的设备 ID 都不会映射到 ttyUSB0。文件 new_id 现在似乎已永久写入“0403 e0d0”。我尝试使用解除绑定文件但没有成功。也没有“remove_id”文件。仅bind、new_id、uevent 和unbind。

我怎样才能恢复这个状态?

答案1

我调查了这一点,它似乎remove_id从未实现过usb-serial。应该能够承担drivers/usb/core/driver.c并实施remove_id工作drivers/usb/serial/bus.c

很抱歉没有一个简单的答案。

答案2

正如@robbat2 所说。通用 USB 串行驱动程序未实现 remove_id 属性。不过,您无需重新启动整个系统,只需卸载并重新加载内核模块即可恢复更改。由于这会擦除 new_id 设备表,因此您将获得所需的效果。

移除模块

sudo modprobe -r usb_serial_simple

重新插入模块

sudo modprobe usb_serial_simple

相关内容