Commit Graph

324 Commits

Author SHA1 Message Date
Aleksander Morgado
0436b3e457 api,introspection: report list of drivers, not just one
Different ports of the same modem may get handled by different drivers. We
therefore need to provide a list of drivers (new `Modem.Drivers' property with
signature 'as') instead of just one (removed `Modem.Driver' property with
signature 's').

$ sudo mmcli -m 0 | grep drivers
           |        drivers: 'qcserial, qmi_wwan'
2012-08-24 13:34:51 +02:00
Aleksander Morgado
1ac18a06bb api,dbus: 'ip-type' property now given as a MMBearerIpFamily (u)
Instead of using a predefined set of string values for 'ip-type' in
Modem.CreateBearer() and Simple.Connect(), we'll use an enumeration. The
implementation will then need to convert the requested IP family type to e.g.
the correct PDP type in 3GPP modems.

This change also consolidates the use of enums in dictionary properties when
possible to do so, as with the Rm Protocol.
2012-08-22 09:38:21 +02:00
Aleksander Morgado
7518772d4b core: fatal errors in iface initializations force the modem into a FAILED state
Modems which end up being found unusable (e.g. no SIM, fatal SIM error, no
capabilities) will be exposed in DBus, but just with the Modem interface and
in a FAILED state which allows no actions.
2012-03-30 13:47:00 +02:00
Aleksander Morgado
ad8a40f8aa api,dbus: update the fields retrievable in the raw GPS location source
Currently just provide the time of measurement, latitude, longitude and
altitude.
2012-03-29 09:18:04 +02:00
Aleksander Morgado
ceefa2c356 location: rework to allow multiple location sources
Location sources can now be enabled or disabled by using the mask of sources
given in Setup() (similar previous Enable()).
2012-03-29 09:17:53 +02:00
Aleksander Morgado
4f06aa5106 api,dbus: include user' and password' as properties given to Simple Connect 2012-03-16 14:53:26 +01:00
Aleksander Morgado
238e2a5341 api,dbus: new `OwnNumbers' property in the Modem interface 2012-03-16 14:53:21 +01:00
Aleksander Morgado
bd9d7011b9 api,dbus: rewrote Time interface to be used with gdbus-codegen 2012-03-16 14:53:20 +01:00
Aleksander Morgado
3ccc78e858 api: `UnlockRetries' will reply a list of per-lock retry counts
Equivalent to `PinRetryCount' in the previous API. We don't have an additional
property for the retry count of the current lock, as it really is duplicating
information.
2012-03-16 14:53:19 +01:00
Aleksander Morgado
64f49c0c72 iface-modem: the Command() method is only allowed when running in debug mode 2012-03-16 14:53:18 +01:00
Aleksander Morgado
e68db23a97 introspection: setup all new files and remove old ones 2012-03-16 14:53:17 +01:00
Aleksander Morgado
920fefa8e2 modem: new property to allow specifying longer timeouts when configuring IP
This IpTimeout property will be read by NetworkManager, and used as the time to
wait for pppd to establish the IP configuration.
2012-02-17 13:25:03 +01:00
Thomas Tuttle
accb3f0a58 api: add Modem.Time introspection XML
Signed-off-by: Thomas Tuttle <ttuttle@chromium.org>
2012-01-25 15:58:02 -06:00
Thomas Tuttle
835e14d8d5 api: add firmware interface XML file to introspection/Makefile.am
Signed-off-by: Thomas Tuttle <ttuttle@chromium.org>
2012-01-25 15:53:37 -06:00
Thomas Tuttle
a1682fe3e5 trivial: sort introspection/Makefile.am and all.xml
To make things neater, sort the files listed in instrospection's Makefile
alphabetically, and sort the files listed in all.xml alphabetically within
logical groups.

Signed-off-by: Thomas Tuttle <ttuttle@chromium.org>
2012-01-25 15:53:07 -06:00
Dan Williams
e2306a0dd5 gsm: change SMS send validity from 5-minute units to minutes
Might as well keep it simple.
2012-01-18 16:30:15 -06:00
Dan Williams
9bba24941b api: change SMS save/send validity units
Making clients pass the raw GSM PDU value isn't very useful
since it's not exactly trivial to create programmatically.
Instead, let's make validity be units of 5 minutes and MM
will automatically figure out how to map that to the PDU
value.
2012-01-18 12:52:28 -06:00
Dan Williams
86e3ab1540 sms: punt handling of 8-bit encoded SMSs to clients
There's no encoding information about 8-bit SMS messages,
and they are often binary things like ringtones or voicemail
indicator commands.  Since there's no point to our parsing
them just let clients deal with it.
2012-01-09 17:23:48 -06:00
Eric Shienbrood
eede5bb621 gsm: add new property to track which facility locks are enabled
The property EnabledFacilityLocks on the .Modem.Gsm.Card interface
is a bit mask that indicates which of the various personalization
codes from 3GPP TS 22.022, plus the SIM PIN lock and SIM PIN2 lock,
are enabled. The set of facility locks supported by the modem is
determined at the time the modem is initialized, and the state of
each supported lock (enabled or disabled) is determined. When the
state of a lock changes, a property-change signal is sent out. Note
that ModemManager only supports enabling and disabling SIM-PIN, via
the EnablePin method on Modem.Gsm.Card.
2011-11-16 23:41:49 -06:00
Eric Shienbrood
e7b6b2dc1c core: keep track of all PIN retry counts
Added a PinRetryCounts property on org.freedesktop.ModemManager.Modem.
This is dictionary that records the number of PIN tries remaining
for each of the possible PIN code types for which the modem is
capable of reporting the count. Also, these counts are kept up
to date across ChangePin and EnablePin operations, not just when
an unlock is attempted.
2011-11-16 17:42:50 -06:00
Thomas Tuttle
953701a6f8 modem: add firmware interface 2011-09-08 17:20:00 -04:00
Aleksander Morgado
15f77d131a api: add license and header include guards 2011-08-17 16:21:21 +02:00
Aleksander Morgado
6eb32c72da introspection: renamed MM_MODEM_STATE_CHANGED_REASON to MM_MODEM_STATE_REASON 2011-08-17 16:21:21 +02:00
Aleksander Morgado
36dabababd introspection: rename changed reason UNKNOWN to NONE 2011-08-17 16:15:06 +02:00
Aleksander Morgado
914ad628ab introspection: define MM_MODEM_TYPE_UNKNOWN 2011-08-17 16:15:06 +02:00
Aleksander Morgado
7e246f6018 introspection: use state type in StateChanged signal definition 2011-08-17 16:15:06 +02:00
Aleksander Morgado
713c07290f introspection: define type MM_MODEM_STATE 2011-08-17 16:02:57 +02:00
Andrew Bird
2db79a8b54 api: add new LTE constant to the MM_ACCESS_TECHs
The 10.4 version of TS27.007 extends the range of values possible from AT+COPS?
The range of values are as follows:
3GPP TS 27.007 V10.4.0, +COPS
<AcT>: integer type; access technology selected
0       GSM
1       GSM Compact
2       UTRAN
3       GSM w/EGPRS
4       UTRAN w/HSDPA
5       UTRAN w/HSUPA
6       UTRAN w/HSDPA and HSUPA
7       E-UTRAN

All but the LTE (E-UTRAN) value can be represented in MM 0.5, this patch adds a
new constant to correct that, until the MM API is redesigned later for 0.6.

Signed-off-by: Andrew Bird <ajb@spheresystems.co.uk>
2011-07-29 16:56:10 -05:00
Dan Williams
3e2b6fb24c cdma: set Rm interface protocol if required (bgo #641661)
Some providers (CDMA Ukraine) apparently require a specific Rm interface
protocol, so add some Simple Connect dict settings for that and use them
when dialing.  Obviously requires the connection manager to also have
support for sending the right bits down to MM.
2011-07-19 15:36:39 -05:00
Nathan Williams
1b73fa1541 Add a DBus interface for setting the log level.
Lifted almost entirely from similar code in NetworkManager.

BUG=chromium-os:15197
TEST='dbus-send --print-reply --system --dest=org.freedesktop.ModemManager /org/freedesktop/ModemManager org.freedesktop.ModemManager.SetLogging string:DEBUG'
Also try valid log levels 'ERR', 'WARN', 'INFO', and an invalid log level, such as 'ABCDE'.

Change-Id: I2bddcd0319f4966dd293b119f68e7cc1697949b7
Reviewed-on: http://gerrit.chromium.org/gerrit/3134
Tested-by: Nathan J. Williams <njw@chromium.org>
Reviewed-by: Eric Shienbrood <ers@chromium.org>
2011-06-30 12:25:02 -05:00
Aleksander Morgado
f2ba435446 manager: protect ScanDevices() d-bus method with manager control policy rule 2011-06-06 17:20:17 +02:00
Aleksander Morgado
3fb53d3348 manager: new ScanDevices() d-bus method to request a new device scan loop 2011-06-06 17:20:17 +02:00
Aleksander Morgado
8c1430763f introspection: indentation fixes 2011-06-06 17:20:16 +02:00
Nathan Williams
a1378ae8e8 Spec out and implement a command to get a GSM SIM SPN value.
Using a SIM with a SPN, run the following command:
dbus-send --system --dest=org.freedesktop.ModemManager --print-reply /org/freedesktop/ModemManager/Modems/0 org.freedesktop.ModemManager.Modem.Gsm.Card.GetSpn

Change-Id: I8f36c8432f40fa4e3cb3f8c6ceef16b2bdadf2a1
Reviewed-on: http://gerrit.chromium.org/gerrit/1464
Reviewed-by: Nathan J. Williams <njw@chromium.org>
Tested-by: Nathan J. Williams <njw@chromium.org>
2011-06-02 17:45:56 -05:00
Aleksander Morgado
466b6edbf7 gsm: allow setting more than one band 2011-04-29 12:31:07 +02:00
Aleksander Morgado
573dcd51c0 introspection: add missing UMTS 2600 band reference 2011-04-28 12:02:15 +02:00
Nathan Williams
487972c1ac gsm: implement basic SMS reception and PDU parsing 2011-04-14 14:07:31 -05:00
Dan Williams
3568f534c8 api: clarify SendPin documentation 2011-03-26 12:20:46 -05:00
Dan Williams
00b6cce4df api: fix up StateChanged duplicate reason code
And add new reason codes to the C headers.
2011-01-24 14:36:24 -06:00
Dan Williams
e3de8c4a11 api: fix up modem state changed reason enum description 2011-01-24 13:57:22 -06:00
Dan Williams
2b2ca316a1 Merge remote branch 'chromium/to-upstream' 2011-01-24 13:56:40 -06:00
Guido Günther
807120996f api: add reply parameter to USSD Respond method (bgo #638038)
The network will usually send back the new sub menu to pick from.
2011-01-14 12:23:21 -06:00
Dan Williams
d908389aff core: add modem reset/power-cycle command
Based on a patch by Elly Jones from Google.
2011-01-14 12:17:02 -06:00
Dan Williams
6c56db07fc cdma: fix segfault by handling MEID property
Also, MEID->Meid to follow standard D-Bus property semantics.
2011-01-04 17:21:41 -06:00
Dan Williams
a502fd2b19 gsm: add access technology support for HSPA+ 2011-01-01 11:55:41 -06:00
Dan Williams
36c87991c3 build: fix distcheck after introspection XML renames 2010-12-21 11:55:25 -06:00
Elly Jones
f047ca66a4 modemmanager: Add a reason to ConnectionStateChanged events.
This can be used by a connection manager to decide to respond in a different way
to certain kinds of disconnects (e.g. intentional versus unintentional versus
suspension).

TEST=None
This change introduces no additional code, so testing it in isolation is not
possible.

BUG=chromium-os:6744

Change-Id: Ie371e20ec7a003333eba013af3ad61c0e494a4ad
Signed-Off-By: Elly Jones <ellyjones@chromium.org>

Review URL: http://codereview.chromium.org/3413011
(cherry picked from commit 29a9674b818fd64c19bad84f526f6fa68edec174)
2010-12-21 11:19:17 -05:00
David Rochberg
d4b2be5f6b Replace ActivationCompleted with ActivationStateChanged, add CDMA error enums.
BUG=6885
TEST=mm-modem.h is correct, cromo compiles

Change-Id: I2b6a49bda5a6ff7bf6e4aac2e99914bf3c33c732

Review URL: http://codereview.chromium.org/3705001

Review URL: http://codereview.chromium.org/3702006
2010-12-21 11:13:05 -05:00
Elly Jones
eb90498efd Add CDMA Activate and ActivateManual methods.
BUG=6885
TEST=built modemmanager and cromo

Change-Id: Ib73a093b13da05948a2f1da8f051fe7c55682584

Review URL: http://codereview.chromium.org/3517013
(cherry picked from commit f447c8e1a0062500e1171e031cf4c8fef76ffd59)

Conflicts:

	src/mm-modem-cdma.c
2010-12-20 15:19:45 -05:00
David Rochberg
b19b25f324 Add enums for activation state
BUG=6885
TEST=inspect mm-modem.h, build cromo et al against new mm-modem.h

Change-Id: Id8c849b6cffbadb9d5d2aa4109257eb747cf9bb5

Review URL: http://codereview.chromium.org/3616004
(cherry picked from commit 3a50b8c28d155060ce035a1c6d5eadf3d91297a5)
2010-12-20 14:47:52 -05:00