Commit Graph
42 Commits
Author SHA1 Message Date
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