Skip to content

Instantly share code, notes, and snippets.

@joar
Last active October 31, 2017 14:58
Show Gist options
  • Save joar/8550197d8e696511d564a972af24541e to your computer and use it in GitHub Desktop.
Save joar/8550197d8e696511d564a972af24541e to your computer and use it in GitHub Desktop.
Sierra EM7455

The final part of the EM7455 Linux driver support is going in Linux v4.7 which will be released in a couple of weeks. It will also be backported to the currently maintained stable kernels, so you should eventually get it through Ubuntu kernel updates.

Sorry it took this long. In theory, any MBIM modem should just work with the existing Linux drivers. But it turned out that the EM7455 needed a small delay during initialization, or it would silently fail to work. The "fix" is a single line of code:

https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/drivers/net/usb/cdc_ncm.c?id=c086e7096170390594c425114d98172bc9aceb8a

But believe me: It took quite a lot of experimenting and failing to figure this out...

In addition to that driver fix, you will also need the absolutely latest version (v1.6) of ModemManager, which also requires recent versions of libqmi (v1.16) and libmbim (v1.14). The reason for this is that the Lenovo version of the EM7455 is configured with a feature we know as "FCC Auth". It is designed to keep the radio off until the OS has told the modem it is OK to enable it. In Linux, the support for doing this automatically was added in ModemManager v1.6. Which isn't quite ready yet. It is currently at v1.6-rc4 (also known as v1.5.993).

These newest versions of ModemManager, libqmi and libmbim are available in Debian sid (unstable) now. This usually means that they are also availble in Ubuntu, but you might have to wait for the next release before they are default.

I can testify that it works. I am happily using an X1 Carbon in Debian sid, with a fully functional EM7455. I am not using a Debian kernel at the moment though, but a self-built v4.7-rc7. This should not be necessary in a couple of weeks, as I expect Debian sid will move to 4.7 as soon as it is released.

Bjørn (one of the two cdc_mbim authors)

https://forums.lenovo.com/t5/Linux-Discussion/ThinkPad-X1-Yoga-LTE-Sierra-EM7455-on-Linux-Ubuntu-16-04/m-p/3371464/highlight/true#M7978

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment