[qmi-firmware-update] Flashing does not work properly with Sierra em9191 (5g modem)

Alexander Dydychkin alexander.dydychkin at vicuesoft.com
Thu Feb 3 20:26:12 UTC 2022


Aleksander, big thanks!
The flashing works now.

To sum up (for other devs who wants to work with Sierra em9191 and similar):
1) git clone latest main branch (at least version 1.31.2)
2) Build with parameter `-Dmbim_qmux=true`, example:
meson setup build --prefix=~/build -Dwerror=true -Dgtk_doc=false
-Dintrospection=false -Dmbim_qmux=true -Dqrtr=false -Drmnet=false
-Dcollection=basic
3) Get fw from:
https://source.sierrawireless.com/resources/airprime/software/em919x/em9-approved-fw-packages/
4) Try to flash :)

Here is the log:
./qmi-firmware-update -w /dev/cdc-wdm2 --update
/home/support/adydychk/fws/atta/SWIX55C_01.07.13.00-005.cwe
/home/support/adydychk//fws/atta/SWIX55C_01.07.13.00_ATT_012.007_002.nvu
loading device information before the update...
setting firmware preference:
  firmware version: '01.07.13.00'
  config version:   '012.007_002'
  carrier:          'ATT'
rebooting in download mode...
download mode detected
downloading cwe image: SWIX55C_01.07.13.00-005.cwe (89.2 MB)...
finalizing download... (may take several minutes, be patient)
successfully downloaded in 27.96s (3.2 MB/s)
downloading cwe image: SWIX55C_01.07.13.00_ATT_012.007_002.nvu (80.6 kB)...
finalizing download... (may take several minutes, be patient)
successfully downloaded in 0.07s (1.1 MB/s)
rebooting in normal mode...
normal mode detected

------------------------------------------------------------------------
    NOTE: in order to validate which is the firmware running in the
    module, the program will wait for a complete boot; this process
    may take some time and several retries.
------------------------------------------------------------------------

waiting some time for the device to boot...
loading device information after the update (1/12)...
waiting some time for the device to boot...
loading device information after the update (2/12)...

------------------------------------------------------------------------

   original firmware revision was:
      SWIX55C_01.07.19.00 000000 jenkins 2021/02/11 02:17:18
   original running firmware details:
      Model: EM9191
      Boot version: SWIX55C_01.07.19.00
      AMSS version: SWIX55C_01.07.19.00
      SKU ID: 1104629
      Carrier ID: 1
      Config version: 016.010_000
   original firmware preference details:
      image 'modem': unique id '016.010_000', build id '01.07.19.00_GENERIC'
      image 'pri': unique id '016.010_000', build id '01.07.19.00_GENERIC'





чт, 3 февр. 2022 г. в 15:26, Alexander Dydychkin <
alexander.dydychkin at vicuesoft.com>:

> Sure. I will try today. Thanks!
>
> чт, 3 февр. 2022 г. в 15:17, Aleksander Morgado <aleksander at aleksander.es
> >:
>
>> Hey,
>>
>> > My current status:
>> >
>> > Multiple hardware power off helped. All my 3 modems are ready to work.
>> >
>>
>> Nice!
>>
>> > The last problem, I still have the issue with "error: couldn't open QMI
>> device: endpoint hangup". You requested verbose output:
>> >
>> > ./qmi-firmware-update -w /dev/cdc-wdm3 --update
>> /home/support/adydychk/fws/atta/SWIX55C_01.07.13.00-005.cwe
>> /home/support/adydychk//fws/atta/SWIX55C_01.07.13.00_ATT_012.007_002.nvu
>> --verbose
>> > [03 Feb 2022, 05:54:47] [Debug] [qfu-udev] sysfs path for 'cdc-wdm3'
>> found: /sys/devices/pci0000:00/0000:00:14.0/usb1/1-6/1-6.3
>> > [03 Feb 2022, 05:54:47] [Debug] [qfu-utils] couldn't ping ModemManager:
>> GDBus.Error:org.freedesktop.DBus.Error.NameHasNoOwner: Name
>> "org.freedesktop.ModemManager1" does not exist
>> > [03 Feb 2022, 05:54:47] [Debug] [qfu-image] loading file info...
>> > [03 Feb 2022, 05:54:47] [Debug] [qfu-image] opening file for reading...
>> > [03 Feb 2022, 05:54:47] [Debug] [qfu-image-cwe] reading image headers...
>> > [03 Feb 2022, 05:54:47] [Debug] [qfu-image-cwe] image offset range:
>> [0,89222543]
>> > [03 Feb 2022, 05:54:47] [Debug] [qfu-image-cwe]   image offset range:
>> [400,788692]
>> > [03 Feb 2022, 05:54:47] [Debug] [qfu-image-cwe] image at offset 400 is
>> valid
>> > [03 Feb 2022, 05:54:47] [Debug] [qfu-image-cwe]   image offset range:
>> [788692,45628404]
>> > [03 Feb 2022, 05:54:47] [Debug] [qfu-image-cwe] image at offset 788692
>> is valid
>> > [03 Feb 2022, 05:54:47] [Debug] [qfu-image-cwe]   image offset range:
>> [45628404,86807092]
>> > [03 Feb 2022, 05:54:47] [Debug] [qfu-image-cwe] image at offset
>> 45628404 is valid
>> > [03 Feb 2022, 05:54:47] [Debug] [qfu-image-cwe]   image offset range:
>> [86807092,89222543]
>> > [03 Feb 2022, 05:54:47] [Debug] [qfu-image-cwe] image at offset
>> 86807092 is valid
>> > [03 Feb 2022, 05:54:47] [Debug] [qfu-image-cwe] validating data size...
>> > [03 Feb 2022, 05:54:47] [Debug] [qfu-image-cwe] preloading
>> firmware/config/carrier...
>> > [03 Feb 2022, 05:54:47] [Debug] [qfu-image-cwe]   firmware version:
>> 01.07.13.00
>> > [03 Feb 2022, 05:54:47] [Debug] [qfu-image-cwe]   config version:
>>  unknown
>> > [03 Feb 2022, 05:54:47] [Debug] [qfu-image-cwe]   carrier:
>> unknown
>> > [03 Feb 2022, 05:54:47] [Debug] [qfu-image] loading file info...
>> > [03 Feb 2022, 05:54:47] [Debug] [qfu-image] opening file for reading...
>> > [03 Feb 2022, 05:54:47] [Debug] [qfu-image-cwe] reading image headers...
>> > [03 Feb 2022, 05:54:47] [Debug] [qfu-image-cwe] image offset range:
>> [0,80641]
>> > [03 Feb 2022, 05:54:47] [Debug] [qfu-image-cwe] validating data size...
>> > [03 Feb 2022, 05:54:47] [Debug] [qfu-image-cwe] preloading
>> firmware/config/carrier...
>> > [03 Feb 2022, 05:54:47] [Debug] [qfu-image-cwe]   firmware version:
>> 01.07.13.00
>> > [03 Feb 2022, 05:54:47] [Debug] [qfu-image-cwe]   config version:
>>  012.007_002
>> > [03 Feb 2022, 05:54:47] [Debug] [qfu-image-cwe]   carrier:          ATT
>> > [03 Feb 2022, 05:54:47] [Debug] [qfu,device-selection] single cdc-wdm
>> device requested in sysfs path
>> '/sys/devices/pci0000:00/0000:00:14.0/usb1/1-6/1-6.3'
>> > [03 Feb 2022, 05:54:47] [Debug] [qfu,device-selection]   device found:
>> /dev/cdc-wdm3
>> > [03 Feb 2022, 05:54:47] [Debug] [qfu,device-selection]   using
>> preferred device: /dev/cdc-wdm3
>> > loading device information before the update...
>> > [03 Feb 2022, 05:54:47] [Debug] [qfu-updater] creating QMI DMS client...
>> > [03 Feb 2022, 05:54:47] [Debug] [qfu,utils] creating QMI device...
>> > [03 Feb 2022, 05:54:47] [Debug] [qfu,utils] QMI device created
>> > [03 Feb 2022, 05:54:47] [Debug] [qfu,utils] opening QMI device (without
>> proxy, qmi mode)...
>> > [03 Feb 2022, 05:54:47] [Debug] [/dev/cdc-wdm3] Opening device with
>> flags 'sync, auto'...
>> > [03 Feb 2022, 05:54:47] -Warning ** [/dev/cdc-wdm3] requested QMI mode
>> but unexpected transport type found
>> > [03 Feb 2022, 05:54:47] [Debug] [/dev/cdc-wdm3] created endpoint
>> > [03 Feb 2022, 05:54:47] [Debug] [/dev/cdc-wdm3] Running sync (10
>> retries)...
>> > [03 Feb 2022, 05:54:47] [Debug] [/dev/cdc-wdm3] Sent message...
>> > <<<<<< RAW:
>> > <<<<<<   length = 12
>> > <<<<<<   data   = 01:0B:00:00:00:00:00:01:27:00:00:00
>> >
>> > [03 Feb 2022, 05:54:47] [Debug] [/dev/cdc-wdm3] Sent generic request
>> (translated)...
>> > <<<<<< QMUX:
>> > <<<<<<   length  = 11
>> > <<<<<<   flags   = 0x00
>> > <<<<<<   service = "ctl"
>> > <<<<<<   client  = 0
>> > <<<<<< QMI:
>> > <<<<<<   flags       = "none"
>> > <<<<<<   transaction = 1
>> > <<<<<<   tlv_length  = 0
>> > <<<<<<   message     = "Sync" (0x0027)
>> >
>> > [03 Feb 2022, 05:54:47] [Debug] [/dev/cdc-wdm3] QMI endpoint hangup:
>> removed
>> > [03 Feb 2022, 05:54:47] -Warning ** [/dev/cdc-wdm3] QMI parsing error:
>> QMI framing error detected
>> > error: couldn't open QMI device: endpoint hangup
>> >
>> > What do you think?
>> > In addition I see that my modems do not have ttyUSB* interfaces. I am
>> not a very experienced guy with the modems but in my previous work with 4G
>> SIerra modems I got ttyUSB* interfaces immediately after enabling the qmi
>> open source driver.
>> >
>>
>> Ahh, I think this modem is in MBIM mode, not in QMI mode. And
>> qmi-firmware-update can work with MBIM modems, but only if the QMI
>> over MBIM support was built in libqmi.
>> Can you rebuild your libqmi making sure you specify -Dmbim_qmux=true?
>>
>> Also, when launching the qmi-firmware-update program, try to use the
>> additional "-p" option, so that the proxy is always used.
>>
>> Could you try those 2 things?
>>
>> --
>> Aleksander
>> https://aleksander.es
>>
>
>
> --
> With best regards,
> Alexander
>


-- 
With best regards,
Alexander
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/libqmi-devel/attachments/20220203/e448bdab/attachment-0001.htm>


More information about the libqmi-devel mailing list