问题 :
Beaglebone 中的 Android JellyBean4.1.2 无法识别部分华为 USB 加密狗。
详细地 :
我正在使用在 Android JellyBean4.1.2 上运行的 BeagleBone。
Huawei - E1731 [Locked] , Huawei - E303D [Locked]
在这个平台 上运行良好。
Huawei E303F , Huawei E303F (Both Factory Unlocked)
操作系统无法识别(未生成通信文件)
由我自己完成的解决方法
- 使用 AT 命令将加密狗的模式更改为仅调制解调器模式
- 将供应商 ID 和产品 ID 添加到 init.devicename.sh(强制内核识别 USB 加密狗)
- 使用 VID 和 PID 更改 USB 模式切换文件
现在提到的 USB Dongles 工作正常。
但我想找到根本原因并且必须解决它。
有没有办法通过从源代码构建 Android 操作系统来修复它?如果是,如何?哪些文件需要更改?
为什么有些加密狗在没有提到的解决方法的情况下直接识别?
更新
正如skoperst所说,我已经登记option.c
了 kernel_dir/drivers/usb/serial/option.c
有什么解决办法
other than hard-coding Device VID & PID
。我需要一些更通用的解决方案,以促进
Plug & Play
机制。Plug & Play works in linux
.如果可以的话linux kernal
,Android也可以吗?
您的好建议表示赞赏。非常感谢。