Files
ModemManager/plugins
Aleksander Morgado b497de325a iface-modem: common SIM event reporting logic
We no longer have separate mm_base_modem_process_sim_event() and
mm_broadband_modem_sim_hot_swap_detected() methods. The only
difference between both of them was that one of them would attempt to
cleanup the ports context associated to the SIM hot swap event logic
as soon as a swap was detected, in order to avoid queueing up multiple
such events.

The previous logic wasn't working well, though, as there could be
mixed AT+QMI or AT+MBIM devices that would also require that same
cleanup and so we didn't always know which one should have been
called.

Now we have a single mm_iface_modem_process_sim_event() method, which
will trigger the reprobe and disabling, but which will also perform
the cleanup of the SIM ports swap setup as specified by the
implementation.

So, if a plugin explicitly initializes the serial ports context for
SIM hot swap handling, it should also explicitly clean it up.

Also, the initialization of the serial ports context for SIM hot swap
handling is no longer done automatically for all modems, it will be
done only for those modems using it; i.e. the modems that explicitly
report support SIM hot swap handling using AT URCs.
2022-05-20 09:03:54 +00:00
..
2022-03-01 09:24:37 +01:00
2022-03-26 15:51:11 +01:00
2022-03-26 15:51:11 +01:00
2022-03-01 09:24:37 +01:00
2022-03-26 15:51:11 +01:00
2020-09-28 08:22:35 +00:00
2021-09-07 10:55:43 +00:00

The following list shows the relationship among the different plugins provided
by default by ModemManager. For each of the plugin types, the list of modem
objects created by the plugin is given.

 * Altair:
   ** MMBroadbandModemAltairLte

 * Anydata:
   ** MMBroadbandModemQmi               (generic)
   ** MMBroadbandModemAnydata

 * Cinterion:
   ** MMBroadbandModemQmiCinterion
   ** MMBroadbandModemCinterion

 * Dell:
   ** MMBroadbandModemQmi               (generic)
   ** MMBroadbandModemFoxconnT77w968    (from the Foxconn utils)
   ** MMBroadbandModemMbimXmm           (from the XMM utils)
   ** MMBroadbandModemMbim              (generic)
   ** MMBroadbandModemNovatel           (from the Novatel utils)
   ** MMBroadbandModemSierra            (from the Sierra Legacy utils)
   ** MMBroadbandModemTelit             (from the Telit utils)
   ** MMBroadbandModemXmm               (from the XMM utils)
   ** MMBroadbandModem                  (generic)

 * D-Link:
   ** MMBroadbandModemQmi               (generic)
   ** MMBroadbandModem                  (generic)

 * Fibocom:
   ** MMBroadbandModemMbimXmm           (from the XMM utils)
   ** MMBroadbandModemMbim              (generic)
   ** MMBroadbandModemXmm               (from the XMM utils)
   ** MMBroadbandModem                  (generic)

 * Foxconn:
   ** MMBroadbandModemQmi               (generic)
   ** MMBroadbandModemFoxconnT77w968
   ** MMBroadbandModemMbim              (generic)
   ** MMBroadbandModem                  (generic)

 * Generic:
   ** MMBroadbandModemQmi               (generic)
   ** MMBroadbandModemMbim              (generic)
   ** MMBroadbandModem                  (generic)

 * Gosuncn:
   ** MMBroadbandModemQmi               (generic)
   ** MMBroadbandModemMbim              (generic)
   ** MMBroadbandModem                  (generic)

 * Haier:
   ** MMBroadbandModem                  (generic)

 * Huawei:
   ** MMBroadbandModemQmi               (generic)
   ** MMBroadbandModemMbim              (generic)
   ** MMBroadbandModemHuawei

 * Icera (no explicit plugin):
   ** MMBroadbandModemIcera

 * Iridium:
   ** MMBroadbandModemIridium

 * Linktop:
   ** MMBroadbandModemLinktop

 * Longcheer:
   ** MMBroadbandModemLongcheer

 * MBM:
   ** MMBroadbandModemMbim              (generic)
   ** MMBroadbandModemMbm

 * Motorola:
   ** MMBroadbandModemMotorola

 * Mtk:
   ** MMBroadbandModemMtk

 * Nokia:
   ** MMBroadbandModemNokia

 * Nokia Icera:
   ** MMBroadbandModemIcera             (from the Icera utils)

 * Novatel:
   ** MMBroadbandModemQmi               (generic)
   ** MMBroadbandModemNovatel

 * Novatel LTE:
   ** MMBroadbandModemNovatelLte

 * Option:
   ** MMBroadbandModemOption

 * Option HSO:
   ** MMBroadbandModemHso

 * Pantech:
   ** MMBroadbandModemQmi               (generic)
   ** MMBroadbandModemPantech

 * Quectel:
   ** MMBroadbandModemQmiQuectel
   ** MMBroadbandModemQuectel

 * Samsung:
   ** MMBroadbandModemSamsung           (subclassed from the Icera utils)

 * Sierra Legacy:
   ** MMBroadbandModemSierraIcera       (subclassed from the Icera utils)
   ** MMBroadbandModemSierra

 * Sierra:
   ** MMBroadbandModemQmi               (generic)
   ** MMBroadbandModemMbim              (generic)
   ** MMBroadbandModem                  (generic)

 * Simtech:
   ** MMBroadbandModemQmiSimtech
   ** MMBroadbandModemSimtech

 * Telit:
   ** MMBroadbandModemQmi               (generic)
   ** MMBroadbandModemMbimTelit
   ** MMBroadbandModemTelit

 * Thuraya
   ** MMBroadbandModemThuraya

 * TP-Link:
   ** MMBroadbandModemQmi               (generic)
   ** MMBroadbandModem                  (generic)

 * u-blox:
   ** MMBroadbandModemUblox

 * via:
   ** MMBroadbandModemVia

 * wavecom:
   ** MMBroadbandModemWavecom

 * x22x:
   ** MMBroadbandModemQmi               (generic)
   ** MMBroadbandModemX22x

 * XMM (no explicit plugin):
   ** MMBroadbandModemMbimXmm
   ** MMBroadbandModemXmm

 * ZTE
   ** MMBroadbandModemQmi               (generic)
   ** MMBroadbandModemMbim              (generic)
   ** MMBroadbandModemZteIcera          (subclassed from the Icera utils)
   ** MMBroadbandModemZte