Commit Graph

51 Commits

Author SHA1 Message Date
Aleksander Morgado
8142d7bc53 build: intel plugin depends on the XMM shared utils 2022-11-07 14:25:34 +00:00
Aleksander Morgado
634f6cbcbc build: disable Test interface in base manager if building without tests
There is no real need for this interface if tests are not being built.
2022-11-07 14:25:34 +00:00
Aleksander Morgado
30d77d378a build: fix building without MBIM support
The foxconn shared utils are only built when MBIM is enabled, and
therefore the dell and foxconn plugins should only expect those shared
utils to be present if MBIM is enabled. The foxconn plugin will be
fully disabled when MBIM is disabled.

The fibocom shared utils are only built when MBIM is enabled, and
therefore the fibocom plugin should not expect them built
unconditionally, they will only be present if MBIM is enabled
2022-11-07 14:25:34 +00:00
Evangelos Ribeiro Tzaras
c7afdc5375 build: Warn about potentially uninitialized variables 2022-11-01 13:16:11 +01:00
Aleksander Morgado
82fd4a4bbc build: post-release version bump to 1.21.0 2022-10-27 20:14:41 +00:00
Aleksander Morgado
d4fcb2a57c release: bump version to 1.20.0 2022-10-27 20:03:33 +00:00
Aleksander Morgado
6711cdbbf5 build: require libqmi 1.32.0 and libmbim 1.28.0 2022-10-26 13:27:00 +00:00
Aleksander Morgado
ec28c85a6a build: bump version to 1.19.900 (1.20-rc1) 2022-10-19 11:25:33 +00:00
Aleksander Morgado
9fbeb3348e build: require libmbim 1.27.9 for the MBIM UICC file read support 2022-09-07 20:40:38 +00:00
Akash Aggarwal
b9173176c2 mm-log: hiding personal info while logging for QMI modem 2022-08-25 17:19:57 +02:00
Daniele Palmas
15b031ce6d bearer-mbim: enable multiplex support for wwan devices 2022-08-11 09:48:38 +02:00
Dylan Van Assche
ba96ccc615 build: make tests optional
Add a meson option -Dtests and --without-tests automake option
to disable the compilation of all available testcases.
This is useful for compiling projects with Flatpak such as
GNOME Control Center which disables all possible integrations since they
only need the DBus part of ModemManager.

Contributes to https://gitlab.gnome.org/GNOME/gnome-control-center/-/merge_requests/1392
2022-07-25 11:01:51 +02:00
Dylan Van Assche
efb497e2e6 mm-call-qmi: implement DTMF support
Overwrite the base class with a QMI implementation
to send DTMF characters during a call. Uses the continuous DTMF
QMI messages to support both CDMA and 3GPP networks.
2022-07-16 13:33:29 +00:00
Aleksander Morgado
1f2bea9184 port-mbim: monitor consecutive timeouts 2022-06-30 11:15:04 +02:00
Aleksander Morgado
7a3cbfec64 port-qmi: monitor consecutive timeouts 2022-06-30 11:15:04 +02:00
Aleksander Morgado
db33a43b45 build,meson: require libqmi 1.31.7, in sync with autotools
The required libqmi version was updated in configure.ac to 1.31.7 in
commit ac06052b97, but we forgot to do
the same in the meson setup.
2022-06-24 12:25:51 +02:00
Rukun Mao
3da84c2079 suspend: add suspend/resume support with powerd on ChromeOS
ModemManager handles suspend and resume signals sent from powerd

Fixes https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/issues/547
2022-06-09 08:32:13 +00:00
Aleksander Morgado
9735437061 bearer-qmi: use the new QmiWdRequestedSettings enum type
And bump libqmi to 1.31.5, which is the version introducing the rename.
2022-04-27 11:53:13 +02:00
som
1e08f9ca2c mm-log: hiding personal info while logging
During mm logging, some of the information like simIccId, Telephone
numbers need to be hidden from displaying in the logs to protect
some of the user information.

Implemented for MBIM requiring libmbim 1.27.6, which is the
development version that includes the needed API.
2022-04-20 15:20:34 +02:00
Aleksander Morgado
7960b365d5 data: add example connection dispatcher
Just a minimal example that prints the events in syslog
2022-04-05 08:14:53 +00:00
Aleksander Morgado
99232154b3 build: rename directory where fcc unlocks are kept 2022-04-05 08:14:53 +00:00
Aleksander Morgado
8d0d90a6dd build: require libqmi 1.31.4 for FOX service support 2022-03-28 08:06:10 +00:00
Iñigo Martínez
0bc0831b22 build,meson: Fix udev rules and keyfiles tests
The port to the meson build system a set of defines were lost, that
made the udev rules and the keyfiles tests to not run properly.

This has been changed so defines are now in their proper place and
tests are run properly.

Fixes #537
2022-03-27 00:02:23 +01:00
Aleksander Morgado
c74a377f98 fibocom: new shared interface for common logic
The set_initial_eps_bearer_settings() operation is the same in XMM
capable and generic MBIM modem objects. Place it in a common shared
interface so that we don't duplicate code.
2022-03-09 22:05:32 +00:00
som
40c791e293 intel: new plugin for PCI devices with vendor id 0x8086
For now, just detecting the device and creating generic MBIM or AT
based modems.
2022-03-07 09:51:43 +00:00
Aleksander Morgado
cfbbbdfbaa build: require libqmi 1.31.3
In order to use the new methods that avoid intermediate structs like
QmiConfigTypeAndId.
2022-02-28 21:54:24 +01:00
Aleksander Morgado
683270f403 build: version bump to flag existence of new API (sahara fw update) 2022-01-31 14:21:15 +01:00
Aleksander Morgado
e7a6bb7504 data,fcc-unlock: add example unlock scripts
Added scripts for Foxconn SDX55, Quectel EM120, and several old Sierra
Wireless manufactured devices:
 * Installed but not used by default, the user needs to setup manual
   links from ${pkgdatadir}/fcc-unlock.available.d, to
   ${pkgsysconfdir}/fcc-unlock.d in order to enable them.
 * Installed with rights only for the owner, so that the dispatcher in
   ModemManager can validate them.
 * They rely on $PATH to find the qmicli/mbimcli tools.

In addition to these scripts, per-vid:pid links are created in the
same ${pkgdatadir}/fcc-unlock.available.d directory, specifying which
are the specific devices that require the FCC unlock operation.

This patch also creates the ${pkgsysconfdir}/fcc-unlock.d and
${pkglibdir}/fcc-unlock.d directories where ModemManager looks for the
enabled tools.

Note that the meson setup doesn't support creating/deleting links
officially yet, so we use a workaround using meson.add_install_script
that is not perfect (i.e. doesn't handle the symlink removal during
uninstall). See https://github.com/mesonbuild/meson/issues/1602
2021-11-18 11:20:41 +01:00
Aleksander Morgado
81302efa66 iface-modem: use external dispatcher to attempt FCC unlock
We remove the built-in FCC unlock procedures from the ModemManager, we
will no longer run them automatically, and instead rely on external
scripts/programs to do that.

Packages providing the external FCC unlock tools can install them in
${pkglibdir}/fcc-unlock.d.

Users manually enabling external FCC unlock tools can install them in
${pkgsysconfdir}/fcc-unlock.d.

The user-enabled path takes precedence over the package-enabled one.
2021-11-17 11:30:01 +01:00
Prakash Pabba
2e4bba105e build,meson: bump libqmi version to 1.31.2
In order to be able to use new 5GNR apis.
2021-11-11 18:21:52 +05:30
Iñigo Martínez
ec2e5403f1 build,meson: Make feature options boolean
Different options are set as `feature`, also every possible plugin,
but this may cause confusion.

All options set as `feature` but plugins have been made `boolean` to
avoid further confusions.

`help2man` is also installed in the CI image because is required to
build different libraries.
2021-11-08 09:28:55 +00:00
Aleksander Morgado
4157926a92 build: require libmbim 1.27.3
In order to be able to use the new MS defined context types.
2021-11-03 10:39:35 +01:00
Iñigo Martínez
7663a2e6c3 build,meson: Allow plugins to depend on build options
At the moment plugins might depend only on shared plugins. However,
plugins may depend also in different build options. For example,
`qcom-soc` plugin needs `qmi` option to be enabled.

Plugins build check has been changed to allow to depend on different
build options.

Fixes #447
2021-10-18 07:47:25 +00:00
Iñigo Martínez
7c4f8f6cc5 build,meson: Make use of _opt suffix for option variables
To make option names consistent, an `_opt` suffix has been added.

This was not applied to `polkit` option at the time and this is
fixed now.
2021-10-14 07:57:55 +00:00
Iñigo Martínez
bbc157688d build,meson: Improve plugins option set
Improved the way the plugins are set to allow a smaller summary.
2021-10-14 07:57:55 +00:00
Aleksander Morgado
fb97b0756b build: bump libmbim version to use NO_ESIM_PROFILE 2021-10-13 11:14:08 +02:00
Aleksander Morgado
846dafe86b build: sync libqmi and libmbim versions in meson build
Fixes f5168cb54b
2021-10-13 11:12:35 +02:00
Aleksander Morgado
b75d1d50d7 Revert "build,meson: Improve plugins option set"
This reverts commit 09a5052a77.

This commit breaks the default disabling of the qcom-soc plugin.
2021-09-15 22:00:28 +02:00
Iñigo Martínez
39912daa11 build,meson: Fix libsystemd check
At the moment `libsystemd` is check even if `suspend/resume` and
systemd support are not enabled.

This has been changed so `libsystemd` is checked only if any or both
options are enabled.
2021-09-10 08:39:37 +00:00
Iñigo Martínez
fe53de8bdd build,meson: Make use of feature option for introspection 2021-09-10 08:39:37 +00:00
Iñigo Martínez
190bf5b351 build,meson: Remove unnecessary variables 2021-09-10 08:39:37 +00:00
Iñigo Martínez
09a5052a77 build,meson: Improve plugins option set
Improved the way the plugins are set to allow a smaller summary.
2021-09-10 08:39:37 +00:00
Iñigo Martínez
e075512fc1 build,meson: Make use of the summary function
Since meson 0.53 it has added a new function to summarize the build
configuration[0].

We changed the summary to make use of it.

[0] https://mesonbuild.com/Release-notes-for-0-53-0.html#add-a-new-summary-function
2021-09-10 08:39:37 +00:00
Aleksander Morgado
822b3acbae build: post-release version bump to 1.19.0 2021-09-09 11:22:42 +02:00
Aleksander Morgado
4ccbfcd016 release: bump to 1.18.0 2021-09-08 11:59:06 +02:00
Aleksander Morgado
64f18f036b build: require libqmi 1.30.2
We need the new "Get All Call Info" request support.
2021-09-08 11:57:59 +02:00
Aleksander Morgado
2e44a5921b build,meson: add sms-c examples to build 2021-09-08 11:43:55 +02:00
Aleksander Morgado
7060962c0a build,meson: ignore warnings for missing field initializers
We would usually explicitly skip initializing fields that are going to
be zero-ed anyway.
2021-09-07 10:55:43 +00:00
Aleksander Morgado
2c8cab3670 build,meson: disable float comparison warnings
We have several symbols defined as floating point numbers that
identify "unknown" values, e.g. MM_LOCATION_LONGITUDE_UNKNOWN. We want
to be able to compare with those values directly, even if they're
floats.
2021-09-07 10:55:43 +00:00
Aleksander Morgado
2bb699fc96 meson: introspection support enabled by default 2021-09-07 10:55:43 +00:00