EM7455 Linux Issues

I found the IDs by googling for DW5811e, guessing that the bood PID is one less than the application PID. Usually is.

Most USB serial functions are very simple: One bulk in and one bulk out endpoint is all you need. There is some control signal logic as well, but that’s mostly optional. This makes the drivers simple and in practice interchangeable. The main difference is in the descriptor matching.

I often abuse the “option” driver for this kind of one-shot temporary thing because it does very little sanity checking. It will happily bind to almost any USB interface with two bulk endpoints. Some of the created ttyUSBx devices will be bogus - it will bind to QMI/RMNET functions too for example. But a few bogus ttyUSBx devices does not matter for such temporary recovery operations. What’s important is that it will create a ttyUSBx device for the AT port. We just ignore the rest.

This does of course mean that the option driver would work as a permanent solution as well. The only reason I recommend qcserial instead is that it already has the logic to match the correct USB interfaces for Sierra Wireless modems. That makes it a one-line (or two if we include the boot ID) patch. Most of the logic is shared between these two drivers anyway, using the shared usb_wwan module.

For the permanent, proper fix, that will be patches similar to these ones, adding the Dell IDs instead:

git.kernel.org/pub/scm/linux/ke … 6a0f541243
git.kernel.org/pub/scm/linux/ke … ae9cacd177

I’ll see if I can cook something up

EDIT: patches posted now:
marc.info/?l=linux-usb&m=148976857814189
marc.info/?l=linux-usb&m=148976857814190