Aleksander Morgado
ffae95a46b
iface-modem: new helpers to check if modem has LTE capabilities
2012-03-15 14:14:43 +01:00
Aleksander Morgado
d5af2286e2
iface-modem-3gpp: indicators and unsolicited events are 3GPP-specific
...
Moved code from the Modem interface, as this is really 3GPP-specific
2012-03-15 14:14:43 +01:00
Aleksander Morgado
0f7716887c
iface-modem: new methods to check for specific capabilities being supported
2012-03-15 14:14:42 +01:00
Aleksander Morgado
ba5321adf1
iface-modem: let different SIM object creation implementations
...
We let objects implementing the Modem interface to provide their own SIM
creation method. This allows plugins to subclass MMSim themselves.
2012-03-15 14:14:41 +01:00
Aleksander Morgado
953be3e81d
iface-modem: new methods to setup/cleanup unsolicited result codes
2012-03-15 14:14:40 +01:00
Aleksander Morgado
b29acbb239
iface-modem: renamed modem_charset' to setup_charset'
...
And changed broadband modem accordingly.
2012-03-15 14:14:40 +01:00
Aleksander Morgado
7b506bc8a6
iface-modem: renamed modem_flow_control' to setup_flow_control'
...
Changed broadband modem and Cinterion plugin accordingly.
2012-03-15 14:14:40 +01:00
Aleksander Morgado
f0433a4dda
iface-modem: setup periodic signal quality checks
2012-03-15 14:14:39 +01:00
Aleksander Morgado
0c009a2c4a
iface-modem: implement property binding for the simple status
2012-03-15 14:14:39 +01:00
Aleksander Morgado
4ccc00fc6d
iface-modem: return a MMBearer reference when creating a new bearer
...
Not just the bearer path.
2012-03-15 14:14:38 +01:00
Aleksander Morgado
93732cf075
bearers: base bearer creation in the new bearer properties object
2012-03-15 14:14:38 +01:00
Aleksander Morgado
9d7e3de4cd
api: MMModemBand is now an enum, not flags
...
We don't want to handle bands as flags, in order to avoid the need of 64-bits
for the enum. This change implies that setting allowed bands will be done by
giving an array of uint32 values, signature "au".
2012-03-15 14:14:37 +01:00
Aleksander Morgado
c9c9421102
iface-modem: allow setting allowed modes and bands internally, not just via DBus
2012-03-15 14:14:36 +01:00
Aleksander Morgado
4495ba180e
core: implement Access Technology reporting
...
For 3GPP modems only for now..
2012-03-15 14:14:35 +01:00
Aleksander Morgado
776cc66e2c
iface-modem: implement all bearer list operations in the interface
...
Bearer list operations, except for Bearer creation, are so generic that the
interface itself can implement it for every object implementing the interface.
This implementation is based on a new MMBearerList object.
2012-03-15 14:14:33 +01:00
Aleksander Morgado
2be2288754
iface-modem: handle CreateBearer(), DeleteBearer() and ListBearers()
...
Just pass the task to the specific underlying implementation.
2012-03-15 14:14:31 +01:00
Aleksander Morgado
b31ad37670
iface-modem: allow changing the State from outside the interface
...
Some states need to be set from outside the scope of the Modem interface, like
Registration-related ones (REGISTERED, SEARCHING, ...) or Connection-related
ones (CONNECTED, ...).
2012-03-15 14:14:29 +01:00
Aleksander Morgado
acc3e3f6da
core: always pass open port to interface initializations
...
When the first AT port is grabbed, modem initialization is launched, using that
specific port. This port is also passed to all interface initialization methods.
2012-03-15 14:14:28 +01:00
Aleksander Morgado
b9448b83cb
iface-modem: simplify interface handling
...
Interfaces won't have a 'status', just initialize(), enable(), disable() and
shutdown().
Also, shutdown() should never fail. We will take care of cancelling any ongoing
operation afterwards, before calling shutdown().
2012-03-15 14:14:28 +01:00
Aleksander Morgado
589c6419d2
iface-modem: send power-down command during disable
2012-03-15 14:14:27 +01:00
Aleksander Morgado
f3b6bfeb8f
iface-modem: interface can be disabled
...
The Modem interface can be disabled, going from enabled back to initialized. The
disabling process will include closing the ports opened during the enabling.
2012-03-15 14:14:27 +01:00
Aleksander Morgado
781c1821fd
iface-modem: setup modem charset configuration during enable
...
Load supported charsets, and loop trying to set the best one.
2012-03-15 14:14:27 +01:00
Aleksander Morgado
c0d3bd944c
iface-modem: send flow control setup commands during enable
2012-03-15 14:14:27 +01:00
Aleksander Morgado
7fa372d118
iface-modem: allow plugins to send custom commands after power-up
...
Just after powering up the modem, plugins can run additional setup commands
themselves, in a new "after" power-up step.
2012-03-15 14:14:27 +01:00
Aleksander Morgado
0adbd8edad
iface-modem: send power-up commands during enable
2012-03-15 14:14:27 +01:00
Aleksander Morgado
b948c93e59
iface-modem: send modem initialization commands during enable
2012-03-15 14:14:26 +01:00
Aleksander Morgado
f049dbb217
iface-modem: emit StateChanged signal when modem state changes
2012-03-15 14:14:26 +01:00
Aleksander Morgado
7b59a80912
iface-modem: load CurrentCapabilities first
...
With AT+GCAP we load the currently available capabilities, and we store them
in a new "iface-modem-capabilities" property in the MMIfaceModem interface. This
property is bound to the "current-capabilities" property in the MmGdbusModem
skeleton object, so no need to update both when it changes.
ModemCapabilities depend directly on whether the modem can load firmware without
reflashing the device. Currently, just set it equal to CurrentCapabilities.
2012-03-15 14:14:26 +01:00
Aleksander Morgado
126332332b
iface-modem: allow requesting signal quality check
...
The new `mm_iface_modem_signal_quality_check()' method will reload the signal
quality value on demand, set the value of the `SignalQuality' property in DBus,
and also return the results.
2012-03-15 14:14:24 +01:00
Aleksander Morgado
59c37afae6
iface-modem: handle SetAllowedModes()
2012-03-15 14:14:23 +01:00
Aleksander Morgado
1dcd20f18d
iface-modem: handle SetAllowedBands()
...
Also considering that playing with bands may not be supported.
2012-03-15 14:14:23 +01:00
Aleksander Morgado
b9d60d2de4
iface-modem: handle FactoryReset() calls
...
Also considering that reseting may not be implemented.
2012-03-15 14:14:23 +01:00
Aleksander Morgado
03490d1171
iface-modem: handle Reset() calls
...
Also considering that reseting may not be implemented.
2012-03-15 14:14:23 +01:00
Aleksander Morgado
2a1465bc91
iface-modem: create MMSim object during init
2012-03-15 14:14:23 +01:00
Aleksander Morgado
ca15a10629
iface-modem: new `State' property, bound to the one in the MmGDbusModem skeleton
2012-03-15 14:14:23 +01:00
Aleksander Morgado
48babcf976
iface-modem: load SupportedModes' and SupportedBands' during init
2012-03-15 14:14:23 +01:00
Aleksander Morgado
7a20ad46d8
iface-modem: load UnlockRequired' and UnlockRetries' during init
...
And also allow being loaded upon user request, with
`mm_iface_modem_unlock_check()'.
2012-03-15 14:14:23 +01:00
Aleksander Morgado
9852433095
iface-modem: load EquipmentIdentifier' and DeviceIdentifier' during init
2012-03-15 14:14:22 +01:00
Aleksander Morgado
7a9b0d9fac
iface-modem: load Manufacturer', Model' and `Revision' during init
2012-03-15 14:14:22 +01:00
Aleksander Morgado
b35be61415
iface-modem: load MaxBearers' and MaxActiveBearers' during init
2012-03-15 14:14:22 +01:00
Aleksander Morgado
b6539e9e13
iface-modem: load ModemCapabilities' and CurrentCapabilities' during init
...
When the interface gets initialized, start loading modem and current
capabilities.
2012-03-15 14:14:22 +01:00
Aleksander Morgado
9e7cd2a345
core: new MMIfaceModem interface
...
This interface controls the availability of the DBus Modem interface, and
implements the actions that may be performed in the interface.
2012-03-15 14:14:22 +01:00