Moduł usb-serial-sierrawireless i tak ładował mi się przed usb-net-cdc-ether mimo takiej kolejności:
root@OpenWrt:/etc/modules.d# ls -1
02-crypto-hash
09-crypto-arc4
20-ipv6
20-usb-core
25-nls-cp437
25-nls-iso8859-1
30-fs-ext4
30-fs-vfat
30-gpio-button-hotplug
40-scsi-core
40-usb2
42-ip6tables
50-ledtrig-usbdev
ath9k
ath9k-htc
ipt-conntrack
ipt-conntrack-extra
ipt-core
ipt-ipopt
ipt-nat
ipt-nathelper
lib-crc-ccitt
lib-crc16
ppp
pppoe
usb-net
usb-net-cdc-ether
usb-net-qmi-wwan
usb-net-sierrawireless
usb-serial
usb-serial-option
usb-serial-sierrawireless
usb-serial-wwan
usb-storage
usb-wdm
Musiałem to pozmieniać.
Udało mi się uruchomić modem w trybie qmi. Trzeba zmienić pid (w przypadku mojego modemu na 68A2) żeby tryb qmi był aktywny:
at!udpid?
!UDPID: 68A2
OK
at!udusbcomp=?
0 - HIP DM NMEA AT MDM1 MDM2 MDM3 MS NOT SUPPORTED
1 - HIP DM NMEA AT MDM1 MS NOT SUPPORTED
2 - HIP DM NMEA AT NIC1 MS NOT SUPPORTED
3 - HIP DM NMEA AT MDM1 NIC1 MS NOT SUPPORTED
4 - HIP DM NMEA AT NIC1 NIC2 NIC3 MS NOT SUPPORTED
5 - HIP DM NMEA AT ECM1 MS NOT SUPPORTED
6 - DM NMEA AT QMI SUPPORTED
OK
Po zmianie pid'u interfejsy szeregowe nie są rozpoznawane przez moduły sierra czy option więc jeśli ktoś ich potrzebuje to trzeba dodać ładowanie go przez moduł usbserial:
usbserial vendor=0x1199 product=0x68a2
Moduł qcserial rozpoznaje interfejsy szeregowe. Nie trzeba ich ładować przez podawanie parametrów vendor i product.
Niestety uqmi nie jest w pełni kompatybilny z protokołem qmi zaimplementowanym w modemie. Komenda --get-signal-info nie działa a --stop-network mimo, że nie zwraca błędu nie rozłącza połączenia.