Improved Linux USB Driver¶
As seen in Android_USB_Gadget, the configuration of the USB gadget is highly configurable and can be changed dynamically at runtime.
The Linux kernel driver however contains fixed interface numbers and simply always assumes a certain configuratin/composition with given ordering. This is highly inflexible.
Therefore, we propoes a series of changes to the Linux kernel qmi_wwan.c and qcserial.c drivers which dynamically detect the type of an interface (virtual serial, rmnet, adb, diag) in any order or quantity of ports.
The patches can be found at https://gitea.osmocom.org/phone-side/quectel-experiments/src/branch/master/host-drivers and we'll try to get them mainline soon.