<div dir="ltr">Hi all,<div>I continue research on how to speed up flashing of multiple modems. In addition to flashing without resets which discussed in another thread I try to flash modems parallel.</div><div><br></div><div>I have 3 devices:</div><div>```</div><div>ls /dev</div><div>cdc-wdm1</div><div>cdc-wdm2</div><div>cdc-wdm3<br clear="all"><div>```</div><div>All Sierra modems right now.</div><div><br></div><div>How I start:</div><div>```</div><div>sudo -E ./_debug_build/src/qmi-firmware-update/qmi-firmware-update --verbose-log=/home/libqmi/wdm1.log -w /dev/cdc-wdm1 --update /home/0/DOCOMO/SWI9X50C_01.09.04.00.cwe /home/0/DOCOMO/SWI9X50C_01.09.04.00_DOCOMO_002.015_000.nvu & \<br>sudo -E ./_debug_build/src/qmi-firmware-update/qmi-firmware-update --verbose-log=/home/libqmi/wdm2.log -w /dev/cdc-wdm2 --update /home/0/SPRINT/SWI9X50C_01.08.04.00.cwe /home/0/SPRINT/SWI9X50C_01.08.04.00_SPRINT_000.001_001.nvu & \ <br>sudo -E ./_debug_build/src/qmi-firmware-update/qmi-firmware-update --verbose-log=/home/libqmi/wdm3.log -w /dev/cdc-wdm3 --update /home/0/GENERIC/SWI9X50C_01.11.00.00.cwe /home/0/GENERIC/SWI9X50C_01.11.00.00_GENERIC_002.023_000.nvu &<br></div><div>```</div><div><br></div><div>I get the error like:</div><div>```<br>[07 Jun 2021, 18:11:34] [Debug] [qfu-udev] event: add 3-4.4<br>[07 Jun 2021, 18:11:34] [Debug] [qfu-udev] event: add 3-4.4:1.0<br>[07 Jun 2021, 18:11:34] [Debug] [qfu-udev] event: add ttyUSB2<br>[07 Jun 2021, 18:11:34] [Debug] [qfu-udev] waiting device (tty) matched: ttyUSB2<br>[07 Jun 2021, 18:11:34] [Debug] [qfu-updater] TTY device found: /dev/ttyUSB2<br>[07 Jun 2021, 18:11:34] [Debug] [qfu-sahara-device] opening TTY: /dev/ttyUSB2<br>[07 Jun 2021, 18:11:34] [Debug] [qfu-sahara-device] setting terminal in raw mode...<br>[07 Jun 2021, 18:11:34] [Debug] [qfu-updater] sahara device creation failed: error getting serial port attributes: Inappropriate ioctl for device<br>[07 Jun 2021, 18:11:34] [Debug] [qfu-qdl-device] opening TTY: /dev/ttyUSB2<br>[07 Jun 2021, 18:11:34] [Debug] [qfu-qdl-device] setting terminal in raw mode...<br>[07 Jun 2021, 18:11:34] [Debug] [qfu-updater] qdl device creation failed: error getting serial port attributes: Inappropriate ioctl for device <br></div><div>```</div><div>As I understood the code block is:</div><div>```</div><div>    errno = 0;<br>    g_debug ("[qfu-sahara-device] setting terminal in raw mode...");<br>    if (tcgetattr (self->priv->fd, &terminal_data) < 0) {<br>        inner_error = g_error_new (G_IO_ERROR, G_IO_ERROR_FAILED,<br>                                   "error getting serial port attributes: %s",<br>                                   g_strerror (errno));<br>        goto out<br></div><div>```</div><div><br></div><div>I am working on the improvement right now but I have a question from the architecture level. All the processes are independent and have only 1 crossing point - driver. What do you think about my approach? Any "contraindications"? :)  Any comments?</div><div><br></div><div><br></div>-- <br><div dir="ltr" class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr">With best regards,<div>Alexander</div></div></div></div></div>