aboutsummaryrefslogtreecommitdiff
path: root/plugins
AgeCommit message (Collapse)Author
2019-11-27novatel: setup as loadable 'shared' utilsAleksander Morgado
2019-11-27option: setup as loadable 'shared' utilsAleksander Morgado
2019-11-27sierra: setup as loadable 'shared' utilsAleksander Morgado
2019-11-27mbm: skip setting up as common utils libraryAleksander Morgado
The Ericsson MBM modem management is only used by the MBM plugin.
2019-11-27icera: setup as loadable 'shared' utilsAleksander Morgado
2019-11-27plugin-manager: dynamically load 'shared' util librariesAleksander Morgado
2019-11-27plugins: add README explaining plugin relationshipsAleksander Morgado
2019-11-19sierra: add port hints for EM7565 modemAmol Lad
2019-11-13foxconn: new plugin to support the T77W968Aleksander Morgado
The Dell DW5821e is really a re-branded Foxconn T77W968.
2019-11-07dell,dw5821e: add support for the DW5821e with eSIM variantAleksander Morgado
Same port layout as the default one, just a different PID.
2019-11-05telit: add AT$GPSNMUN descriptionDaniele Palmas
2019-11-02telit: minor coding style fixKrzysztof Drobinski
2019-10-31mm-modem-helpers-telit: fix undefined bitshiftsEric Caruso
Since this plugin uses a bitmask to represent bands, we have to be wary of shifting outside the precision of the bitmask storage type. In this case, it was possible to generate 1 << 31 in a signed integer type as an intermediate step of B3G_FLAG, which is undefined behavior (and usually results in INT_MIN, breaking comparisons with the value). Bug was reported to the chromium tracker at crbug.com/1019301 Original patch updated by Aleksander Morgado to leave MM_MODEM_BAND_TELIT_3G_LAST as MM_MODEM_BAND_UTRAN_19, as that is the highest 3G band supported by the current implementation. Worth noting that this was not a real bug as the maximum flag we would have been setting was (1 << 19) anyway.
2019-10-31telit: fix crash if AT$GPSP=? is supported but no GPS data portAleksander Morgado
We would have been de-referencing a NULL GError.
2019-10-31telit: minor coding style fixesAleksander Morgado
2019-10-30telit: Allow enabling GNSS events if NMEA port was detectedKrzysztof Drobinski
2019-10-30quectel: Add port type hints for BG96Sven Schwermer
Signed-off-by: Sven Schwermer <sven.schwermer@disruptive-technologies.com>
2019-10-30quectel: Fix port type hints for EG91Sven Schwermer
Signed-off-by: Sven Schwermer <sven.schwermer@disruptive-technologies.com>
2019-10-21telit: increase timeout for AT#REBOOTKrzysztof Drobinski
It was observed that sporadically it may take more than 5 seconds for modem to respond to AT#REBOOT. Increase the timeout on AT command to not report unnecessary errors to the user.
2019-10-17cinterion: don't cache voice support check AT commandsAleksander Morgado
The result of these commands may be different before and after SIM-PIN unlock, so never cache them.
2019-10-17x22x: add support for the Alcatel X602DAleksander Morgado
As discussed in https://gitlab.freedesktop.org/mobile-broadband/ModemManager/issues/130 Fixes https://gitlab.freedesktop.org/mobile-broadband/ModemManager/issues/130 Fixes https://gitlab.freedesktop.org/mobile-broadband/ModemManager/issues/129
2019-10-17x22x: ignore unhandled URCs in the Alcatel X602DAleksander Morgado
2019-10-16simtech: handle 'MISSED_CALL' URCsAleksander Morgado
https://source.puri.sm/Librem5/ModemManager/issues/6
2019-10-16simtech: setup USB audio channel when in-callAleksander Morgado
We'll use +CPCMREG=1/0 to start/stop USB audio function, and we will also report the specific ttyUSB port to be used for audio in the Call interface.
2019-10-15simtech: handle '+RXDTMF' URCs reporting DTMF tonesAleksander Morgado
2019-10-15simtech: handle non-standard '+CRING' URCsAleksander Morgado
The SIM7600E ends up emitting these URCs with too many <CR>s, and the generic +CRING handler doesn't catch them, interfering with other actions, e.g.: $ sudo mmcli --call 1 --accept error: couldn't accept the call: 'GDBus.Error:org.freedesktop.ModemManager1.Error.Core.Failed: Couldn't accept the call: Unhandled response '+CRING: VOICE +CRING: VOICE''
2019-10-15simtech: handle 'VOICE CALL' URCsAleksander Morgado
Just processing and parsing them for now, so that they don't interfere with other commands: $ sudo mmcli --call 1 --accept error: couldn't accept the call: 'GDBus.Error:org.freedesktop.ModemManager1.Error.Core.Failed: Couldn't accept the call: Unhandled response ' VOICE CALL: BEGIN''
2019-10-14simtech: implement +CLCC URC based call list managementAleksander Morgado
2019-10-14tests,helpers: minor alignment fixAleksander Morgado
2019-10-14tests: print MM logs only on verbose test modeAleksander Morgado
Therefore, avoid needing ENABLE_TEST_MESSAGE_TRACES build symbol.
2019-10-14tests: avoid g_print() and use g_debug() insteadAleksander Morgado
The debug-level logs won't be printed e.g. during 'make check', but will be included when running the tester manually.
2019-10-11simtech: +CNSMOD value may have multiple digitsAleksander Morgado
We don't expect them in the set of values we support, but they may happen according to the spec.
2019-10-11simtech: add support for reporting LTEAleksander Morgado
2019-10-11simtech: rework access tech value mappingAleksander Morgado
2019-10-11simtech: rework enabling/disabling unsolicited eventsAleksander Morgado
We will explicitly query for +AUTOCSQ and +CNSMOD support before trying to enable them. If +AUTOCSQ is supported and correctly enabled, we'll request signal quality polling to be disabled. If +CNSMOD is supported and correctly enabled, we'll request access technology polling to be disabled.
2019-10-11simtech: enable +CSQ URC supportAleksander Morgado
The +AUTOCSQ setup enables automatic signal quality reporting via +CSQ URCs, which unfortunately have the same format as the +CSQ command responses. Therefore, we need to subclass load_signal_quality() explicitly in order to ignore those cases where the response to the +CSQ command is received empty (already processed as a URC).
2019-10-11simtech: keep access tech URC regex in private structAleksander Morgado
2019-10-11simtech: disable CMER/CIND support explicitlyAleksander Morgado
The logic to setup the generic +CIND indications in the SIM7600E seems to end up breaking connectivity when in TTY+PPP mode. If we issue the AT+CMER=3,0,0,1 command, this will end up in the modem not replying a correct CONNECT response to the ATD command. Let's disable these +CIND indications completely in the simtech plugin, as there is even no AT command reference saying those are supported. Fixes https://gitlab.freedesktop.org/mobile-broadband/ModemManager/issues/144
2019-10-11simtech: implement GPS support with AT+CGPSAleksander Morgado
The new logic is available in a new 'MMSharedSimtech' interface which is implemented both by the generic AT-based MMBroadbandModemSimtech modem, and by a new QMI-based new MMBroadbandModemQmiSimtech. Fixes https://gitlab.freedesktop.org/mobile-broadband/ModemManager/issues/112
2019-10-11simtech: port type hints for the SIM7000/SIM7600 familyAleksander Morgado
E.g. the SIM7600E shows up as: P: Vendor=1e0e ProdID=9001 Rev=03.18 S: Manufacturer=SimTech, Incorporated S: Product=SimTech, Incorporated S: SerialNumber=0123456789ABCDEF C: #Ifs= 6 Cfg#= 1 Atr=a0 MxPwr=500mA I: If#=0x0 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=option I: If#=0x1 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=option I: If#=0x2 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=option I: If#=0x3 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=option I: If#=0x4 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=option I: If#=0x5 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=ff Prot=ff Driver=qmi_wwan
2019-10-11simtech: remove unused ID_MM_SIMTECH_TAGGED tagAleksander Morgado
The plugin already has a VID filter for 0x1e0e, this tag is useless.
2019-10-11huawei,bearer: avoid using MM_CORE_ERROR_CANCELLEDAleksander Morgado
2019-09-23ublox: fix calling setup_unsolicited_events_finish()Aleksander Morgado
2019-09-23cinterion: fix calling setup_unsolicited_events_finish()Aleksander Morgado
2019-09-17plugins,telit: refactor #BND command supportAleksander Morgado
And added support for several new things, including: * Setting "any" band now attempts to set all supported bands. * Added new 2G band value '5' (egsm+dcs+pcs+g850). * Setup support for two different 3G band combinations, a default one plus an alternate one applicable to the LM940/960 models only. The alternate combination is selected via udev tags. During the refactor, the following Telit-specific helpers were also removed and exchanged with more generic counterparts. * mm_telit_bands_contains() -> mm_common_bands_garray_lookup() * mm_telit_get_band_flags_from_string() -> mm_parse_uint_list()
2019-09-15simtech: increase +CNSMOD command timeoutAleksander Morgado
From 5s to 20s, as it seems it could take much more to complete and get a response, as seen in the logs below. <debug> [1568553228.546862] (ttyUSB3): --> 'AT+CNSMOD=1<CR>' <debug> [1568553233.799470] (ttyUSB3): --> 'AT+AUTOCSQ=1,1<CR>' <debug> [1568553238.798866] (ttyUSB3) setting up 3GPP unsolicited registration messages handlers <debug> [1568553238.798932] (ttyUSB2) setting up 3GPP unsolicited registration messages handlers <debug> [1568553238.798990] (ttyUSB3) device open count is 1 (close) <warn> [1568553238.799029] (tty/ttyUSB3) at port timed out 2 consecutive times <debug> [1568553238.799094] (ttyUSB3) device open count is 2 (open) <debug> [1568553238.799148] (ttyUSB3): --> 'AT+CREG=2<CR>' <warn> [1568553241.798727] (tty/ttyUSB3) at port timed out 3 consecutive times <debug> [1568553241.798799] (ttyUSB3): --> 'AT+CREG=1<CR>' <debug> [1568553244.795389] Enabling unsolicited registration events in primary port failed: 'AT sequence failed' <debug> [1568553244.795462] (ttyUSB2) device open count is 2 (open) <debug> [1568553244.795507] (ttyUSB3) device open count is 1 (close) <warn> [1568553244.795545] (tty/ttyUSB3) at port timed out 4 consecutive times <debug> [1568553244.795588] (ttyUSB2): --> 'AT+CREG=2<CR>' <debug> [1568553244.800815] (ttyUSB3): <-- '<CR><LF>OK<CR><LF><CR><LF>OK<CR><LF>' <debug> [1568553244.801624] (ttyUSB3): <-- '<CR><LF>OK<CR><LF><CR><LF>OK<CR><LF>' <debug> [1568553244.808710] (ttyUSB2): <-- '<CR><LF>OK<CR><LF>'
2019-09-13telit: add LE922 port type hintsAleksander Morgado
P: Vendor=1bc7 ProdID=1040 Rev=03.10 S: Manufacturer=Android S: Product=Android S: SerialNumber=2d9e48a4 C: #Ifs= 7 Cfg#= 1 Atr=80 MxPwr=500mA I: If#=0x0 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=option I: If#=0x1 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=42 Prot=01 Driver=(none) I: If#=0x2 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=ff Prot=ff Driver=qmi_wwan I: If#=0x3 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=option I: If#=0x4 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=option I: If#=0x5 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=option I: If#=0x6 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=option
2019-09-11tplink: new pluginAleksander Morgado
Includes port type hints for the TP-Link MA260. P: Vendor=2357 ProdID=9000 Rev=00.00 S: Manufacturer=TP-LINK, Incorporated S: Product=TP-LINK HSPA+ Modem S: SerialNumber=863745010845895 C: #Ifs= 5 Cfg#= 1 Atr=e0 MxPwr=500mA I: If#=0x0 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=option I: If#=0x1 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=option I: If#=0x2 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=06 Prot=50 Driver=usb-storage I: If#=0x3 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=ff Prot=ff Driver=option I: If#=0x4 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=ff Prot=ff Driver=qmi_wwan
2019-09-11dlink: new pluginAleksander Morgado
Includes port type hints for the D-Link DWM-222. P: Vendor=2001 ProdID=7e35 Rev=02.28 S: Manufacturer=Mobile Connect S: Product=Mobile Connect S: SerialNumber=0123456789ABCDEF C: #Ifs= 6 Cfg#= 1 Atr=80 MxPwr=500mA I: If#=0x0 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=option I: If#=0x1 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=option I: If#=0x2 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=option I: If#=0x3 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=option I: If#=0x4 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=ff Prot=ff Driver=qmi_wwan I: If#=0x5 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=06 Prot=50 Driver=usb-storage
2019-09-10tests,helpers: minor indentation fixAleksander Morgado