aboutsummaryrefslogtreecommitdiff
path: root/include
AgeCommit message (Collapse)Author
2019-08-29udev: remove ID_MM_PLATFORM_DRIVER_PROBE tagAleksander Morgado
This tag is completely redundant because users can whitelist the platform TTY ports to use with the more generic ID_MM_DEVICE_PROCESS tag, which is part of the explicit whitelist filter rule.
2019-08-29udev: rename ID_MM_DEVICE_MANUAL_SCAN_ONLY to ID_MM_TTY_MANUAL_SCAN_ONLYAleksander Morgado
The udev tag that allows flagging devices that MAY be modems (e.g. USB<->RS232 adapters) is only applicable to TTY devices, so explicitly specify that in the tag name as well.
2019-08-29udev: repurpose ID_MM_DEVICE_IGNORE and new MM_FILTER_RULE_EXPLICIT_BLACKLISTAleksander Morgado
Until now the ID_MM_DEVICE_IGNORE udev tag was being used in the internal blacklist of devices shipped by ModemManager when running in either DEFAULT or PARANOID filter modes. The name of the tag is extremely misleading because it doesn't really make the full device be ignored, the tag only applied to TTY ports. This commit repurposes the tag so that it applies to ANY kind of port (e.g. TTY, NET, cdc-wdm...) and also to any kind of filter type (i.e. also applicable in STRICT mode). The internal blacklist shipped by ModemManager, which should NOT be used in STRICT mode, uses a new tag name, ID_MM_TTY_BLACKLIST. The new ID_MM_DEVICE_IGNORE tag is therefore much more usable and its name is really meaningful. If there are users or third-party projects adding their own udev rules with the ID_MM_DEVICE_IGNORE tag name, they should have no problem as the new rule is more restrictive than the old one.
2019-07-11api,call: new Deflect() methodAleksander Morgado
This method allows deflecting an incoming or waiting call to a different number.
2019-07-11api,voice: new Transfer() methodAleksander Morgado
This method will join all active and held calls into a single multiparty call, and then request the network to terminate the call on the subscriber's end and transfer the control of the call to the parties that are still in the call.
2019-07-11docs: add missing MMCallStateReason documentationAleksander Morgado
2019-07-11docs: add missing MMCallDirection documentationAleksander Morgado
2019-07-11docs: add missing short description for compat sectionAleksander Morgado
2019-07-11docs: add missing MM_CHECK_VERSION documentationAleksander Morgado
2019-04-09location,agps: include support for MSB A-GPSAleksander Morgado
2019-04-09iface-modem-location: define first and last location sourcesAleksander Morgado
Much clearer to understand when looping through them.
2019-04-09location,agps: explicitly specify that MSA A-GPS is implementedAleksander Morgado
The A-GPS based implementations we currently have assume MSA A-GPS, so rename the MMModemLocationSource enum value to reflect that.
2019-01-03dell,dw5821e: also report QMI PDC based update availableAleksander Morgado
2019-01-03api,firmware: MMModemFirmwareUpdateMethod as flags, not enumAleksander Morgado
Devices may require/support more than one update method, so instead of reporting the method as a single enum value, use a set of flags instead.
2019-01-03api,firmware: new UpdateSettings propertyAleksander Morgado
2018-12-07api,bearer: new 'BearerType' propertyAleksander Morgado
Until now we have only allowed to use and setup 'default bearers' (in 4G) or 'primary contexts' (in 2G/3G). We can define a couple of additional bearer types, though: * The 'dedicated bearers' (in 4G) or 'secondary contexts' (in 2G/3G), which are associated to a specific default/primary one, but which provide specific QoS settings configured via traffic flow templates. * The 'initial default EPS bearer', which is a special case of default bearer in LTE, which is automatically created and connected when the modem is registered in the LTE network. This commit introduces a new 'MMBearerType' enumeration that will be associated to each bearer through a 'BearerType' property in the org.freedesktop.ModemManager1.Bearer interface, showing what kind of bearer/context this is. By default, right now, all bearer objects created are 'default' bearers.
2018-10-16api,call: new state reason to report audio setup failuresAleksander Morgado
2018-09-25udev: define all generic tags as symbolsAleksander Morgado
This prevents errors due to nasty typos in the strings. We define all symbols in a single header file that is NOT considered part of the API, as there is no need for MM clients to know about these tags code-wise. These tags are only meaningful when associated to devices in udev. Information of each tag is included in the general API documentation. https://gitlab.freedesktop.org/mobile-broadband/ModemManager/issues/88
2018-08-21api: define E-UTRAN bands 49 to 64Aleksander Morgado
2018-08-21api: support location assistance dataAleksander Morgado
Sometimes SUPL-server based A-GPS is not possible, e.g. if the module doesn't have Internet connectivity. In such cases, the modem may support injecting additional "assistance data" that may be downloaded from the Internet using external means (e.g. WiFi), in order to keep having a quick time to first fix. We now support using this location assistance data, with the following new API elements: * A new mask of supported assistance data types is provided in the SupportedAssistanceData property. * A new list of URLs from where the aassistance data may be downloaded is also provided in a new AssistanceDataServers property. * A new InjectAssistanceData() method is provided, to perform the data injection in the module once it's been downloaded to the host system.
2018-06-10doc: fix explanation of MM_CALL_STATE_RINGING_{IN|OUT}Aleksander Morgado
They were reversed; ringing in applies to incoming calls, ringing out applies to outgoing calls.
2018-05-24include: fix up whitespaceDan Williams
2018-05-22include: add more 3GPP errorsDan Williams
From 3GPP TS 27.007 version 11.6.0 Release 11, sections 9.2.1, 9.2.2.1, 9.2.2.2, and 9.2.2.3.
2018-02-05API: don't depend on GLib in ModemManager headersAleksander Morgado
We should only depend on GLib on the libmm-glib headers. Otherwise, packages using just the core headers (e.g. ModemManagerQt) would also need to build-depend on GLib and we don't want to enforce that. cd ~/buildroot/output/build/kde-modemmanager-qt-v5.36.0/src && ~/buildroot/output/host/usr/bin/arm-cortexa9_neon-linux-gnueabihf-g++ .... -fPIC -o CMakeFiles/KF5ModemManagerQt_static.dir/bearer.cpp.o -c ~/buildroot/output/build/kde-modemmanager-qt-v5.36.0/src/bearer.cpp In file included from ~/buildroot/output/host/usr/arm-buildroot-linux-gnueabihf/sysroot/usr/include/ModemManager/ModemManager.h:41:0, from ~/buildroot/output/build/kde-modemmanager-qt-v5.36.0/src/generictypes.h:27, from ~/buildroot/output/build/kde-modemmanager-qt-v5.36.0/src/generictypes.cpp:23: ~/buildroot/output/host/usr/arm-buildroot-linux-gnueabihf/sysroot/usr/include/ModemManager/ModemManager-compat.h:23:18: fatal error: glib.h: No such file or directory compilation terminated.
2018-01-25*: Spelling fixesVille Skyttä
2018-01-20modem-3gpp: allow loading and changing EPS UE mode of operationAleksander Morgado
The UE modes of operation for LTE are defined in 3GPP TS 24.301 (e.g. section 4.3 in v10.3.0): * PS mode 1: EPS only, 'voice centric' * PS mode 2: EPS only, 'data centric' * CS/PS mode 1: EPS and non-EPS, 'voice centric' * CS/PS mode 2: EPS and non-EPS, 'data centric' The mode specifies, among other things, how the UE should behave w.r.t CS fallback depending on the capabilities reported by the network.
2017-09-07api: add MM_DISABLE_DEPRECATED guards around deprecated symbolsAleksander Morgado
When this symbol is defined, e.g. via CFLAGS, building a program that uses the ModemManager API will fail if the program references deprecated symbols. For now we just use it to keep gtk-doc-scan happy and avoid unnecessary warnings.
2017-09-07api: define additional LTE frequency bandsAleksander Morgado
2017-09-07api: consolidate CDMA frequency enumerationsAleksander Morgado
Define new symbols with easier names, just based on the Band Class.
2017-09-07api: define additional UMTS frequency bandsAleksander Morgado
2017-09-07api: new MM_BAND_UTRAN_ enumerations for WCDMA bandsAleksander Morgado
Flag as deprecated the old names, and define new ones based on the defined UTRAN band numbers, equivalent to what was done for LTE bands.
2017-09-07api: define additional GSM frequency bandsAleksander Morgado
New definitions for not so common GSM frequency bands.
2017-09-07api: don't use intermediate variables for deprecation warningsAleksander Morgado
Using an intermediate constant variable breaks compilation with C compilers, as these variables cannot be used as initializers. Instead, define a deprecated type and cast all deprecated symbols to that type. We lose the information about what the new replacement symbol is, but we don't break compilation. E.g.: test.c: In function ‘main’: test.c:8:5: warning: ‘MMModemBandDeprecated’ is deprecated [-Wdeprecated-declarations] printf ("band: %d\n", MM_MODEM_BAND_U2100); ^~~~~~
2017-06-28compat: add compatibility definitions for old MM_MODEM_BAND_EUTRAN_* valuesBen Chan
Those Roman numeral suffixes in MM_MODEM_BAND_EUTRAN_* were replaced with 1, 2, 3, ..., etc. This patch adds a compatibility header, ModemManager-compat.h, to alias the old MM_MODEM_BAND_EUTRAN_* values to the new values.
2017-06-28enums: replace Roman numeral suffixes in MM_MODEM_BAND_EUTRAN_*Ben Chan
3GPP TS 36.101 Table 5.5-1 refers the E-UTRA operating bands as 1, 2, 3, ..., etc.
2016-10-123gpp: update registration state enumeration with CSFB related statesAleksander Morgado
Introduce "sms only" and "CSFB not preferred" home/roaming states to be reported for the CS context, while already registered on LTE. Based on 3GPP TS 27.007 v13.5.0.
2016-05-03bearer-mbim: fine-tune bearer IP method reportingDan Williams
v4: modems/providers may not return DNS servers and not all modems support DHCP, so lack of DNS servers should not indicate a bearer IP method of "DHCP". IP config daemon/scripts already have to handle missing DNS anyway. v6: IPv6 requires SLAAC or DHCPv6 as part of the specification, so for now we assume modems will support it. Provide all the info the modem sent, but if there is any missing information use an IP method of "DHCP" to indicate that info should be obtained via SLAAC/DHCPv6. Only use an IP method of "STATIC" when all basic properties are given by the modem.
2015-08-02api,voice: minor coding style fixesAleksander Morgado
2015-08-02api: added Modem.Voice and Call interfaces for voice call handlingRiccardo Vangelisti
2014-10-15qcdm: don't retry probing if QCDM unescaping failsAleksander Morgado
But keep the retries when the frame marker isn't found. https://bugzilla.gnome.org/show_bug.cgi?id=708861
2014-09-05introspection,api: add SUPL server configuration in the Location interfaceAleksander Morgado
2014-07-02location: new 'unmanaged' GPS setupAleksander Morgado
Standard GPS setup (raw/nmea) will both enable the GPS module and take full control of the GPS port. This prevents other processes from reading the NMEA traces from e.g. a tty. In order to handle this, a new 'unmanaged' GPS location source is introduced, which will just enable/disable the GPS module, without reading anything from the GPS port. Of course, both raw/nmea and unmanaged setups cannot be enabled at the same time.
2014-06-13api: update documentation about IPv6 bearer methodsDan Williams
Even if the IPv6 bearer method is DHCP, the client should use SLAAC (eg, IPv6 Router Solicitations, Router Adverisements, and possibly DHCPv6) to determine the correct prefix and DNS information. In some cases, even with the DHCP method, and IPv6 "address" will be given which should be assigned to the data port before beginning an IP addressing as the mobile network may expect this address to be used.
2014-05-29api,doc: add missing documentation for the new GPRS errorsAleksander Morgado
2014-05-29core: add E-UTRAN operating band 44Ben Chan
E-UTRAN operating band 44 is specified in 3GPP release 11 (see Table 5.5-1 "E-UTRA operating bands" in 3GPP TS 36.101 version 11.2.0 Release 11).
2014-05-07api,errors: define new EPS-related errorsDan Williams
We can use these to return better error messages if an operator does not support the default subscription APN functionality, and the user does not give us an APN.
2013-10-25api,header: added new CDMA-specific 'MMSmsDeliveryState' enumeration valuesAleksander Morgado
2013-10-25api: add 'ServiceCategory' property to the SMS interfaceAleksander Morgado
Will be used in 3GPP2 SMS messages.
2013-10-25api: add 'TeleserviceId' property to the SMS interfaceAleksander Morgado
Will be used in 3GPP2 SMS messages.
2013-10-25api,header: added new CDMA-specific 'MMSmsPduType' enumeration valuesAleksander Morgado