Telit LM940 modem support

Has anyone tested the mPCIe LM940 modem on the Ixora carrier board?
I also have an LE910 and this works fine. I can see it using lsusb, and can go on to get an internet connection.
The LM940 is not showing up as a USB device at all (using lsusb). The datasheet says it can take 20s to boot, but waiting minutes does not help.
I am using the latest (5.4) multimedia image.

Hi @msmith , not sure if I follow but is this a USB or a mPCIe device? If it is a mPCIe device, it won’t show in “lsusb”.

Could you try with “lspci”?

Kind regards,

Thanks Alvaro

It’s definitely a USB device. The datasheet says it has USB 2.0 and 3.0 interfaces. The USB 3.0 signals are on the PCI pins.
It should operate in USB 2.0 mode - just not a max speed.
Neither lspci and lsusb return any reference to the modem.

The Telit LM940 modem can support not only USB2 but USB3 as an option. We found that it uses the PCIe pins for its USB3.0 interface. Depending on the Linux kernel version and type of SOC, this can cause a conflict and lockup of the Telit LM940 modem firmware. For demo purpose you can try to isolate these USB3.0 pins on the Telit LM940 modem (pins 23, 25, 31,33) or use an external Mini PCI-E to USB2.0 Adapter like this

I can confirm that isolation of LM940 pins 23, 25, 31,33 did a trick. Now modem got detected by Apalis iMX8 when inserted in mPCIe slot.

Thanks Alex
We have custom hardware (first proto) that has copied the Ixora design for PCIe. What is the recommended production solution? Is there a kernel fix for i.MX8QM that would let us keep the same design, or should we wire up USB 3.0 to the PCIe signals in the next version?

. We have no SW fix I did try to disable PCIe driver but it didn’t help. Though same modem works OK with Ixora/ Apalis iMX6 combination. Most likely forcing a modem reset after Linux boot will fix a problem, but Ixora design doesn’t allow a separate PCIe reset. If a mini PCIe slot on your carrier board is only for modem you can just disconnect PCIE1_RX/TX pins (23, 25, 31,33)