Commit Graph
134 Commits
Author SHA1 Message Date
Aleksander Morgado dc5ff06b4f broadband-modem: implement generic unsolicited SMS events handling 2012-03-15 14:15:00 +01:00
Aleksander Morgado 0cdc8e8dd7 broadband-modem: don't assume CIEV/CIND signal quality is in the [0,5] range
When running AT+CIND=? we get the real range for the signal quality indications,
like: "signal",(1-7).

The max value doesn't need to be 5; so if we do get min and max, we will
normalize the returned quality using the proper range and scale it to the
[0,100] range.
2012-03-15 14:15:00 +01:00
Aleksander Morgado eb37fc1589 broadband-modem: log the indexes expected in CIEV unsolicited messages 2012-03-15 14:15:00 +01:00
Aleksander Morgado 664f407b99 broadband-modem: by default use PDU mode for SMS operations
Currently the support for text mode lacks a lot of functionality.
2012-03-15 14:15:00 +01:00
Aleksander Morgado cd5e9c27a3 broadband-modem: if locked, don't try to initialize remaining interfaces
Whenever we get unlocked, the modem initialization sequence will be run again.
2012-03-15 14:14:59 +01:00
Aleksander Morgado 157dd69646 broadband-modem: default implementation of SMS part list loading 2012-03-15 14:14:59 +01:00
Aleksander Morgado 9079d660a5 broadband-modem: default implementation of SMS format setting 2012-03-15 14:14:59 +01:00
Aleksander Morgado 14fa4aae1d broadband-modem: override the SMS list property 2012-03-15 14:14:59 +01:00
Aleksander Morgado 4c6765857b broadband-modem: implement default messaging support check
We'll just:
 * Report unsupported on CDMA-only modems.
 * Check if AT+CNMI=? replies correctly, and if so, assume SMS-based messaging
   is supported.
2012-03-15 14:14:58 +01:00
Aleksander Morgado 52f1c87b06 broadband-modem: implement the Messaging interface 2012-03-15 14:14:58 +01:00
Aleksander Morgado c2e750d5bf sim: avoid passing source of the async object in finish 2012-03-15 14:14:58 +01:00
Aleksander Morgado 64de09f052 broadband-modem: if failed to initialize an optional interface, shut it down 2012-03-15 14:14:58 +01:00
Aleksander Morgado e808e04910 broadband-modem: implement USSD cancellation 2012-03-15 14:14:57 +01:00
Aleksander Morgado 8acf9e4fbc broadband-modem: implement USSD command sending 2012-03-15 14:14:57 +01:00
Aleksander Morgado 2bf40184e0 iface-modem-3gpp-ussd: allow error reporting in encode/decode 2012-03-15 14:14:57 +01:00
Aleksander Morgado f3ee74c1e8 broadband-modem: implement default handling of USSD URCs 2012-03-15 14:14:57 +01:00
Aleksander Morgado e975543316 broadband-modem: implement default USSD encode/decode 2012-03-15 14:14:57 +01:00
Aleksander Morgado 4718ba0055 broadband-modem: implement generic URC setup/cleanup 2012-03-15 14:14:57 +01:00
Aleksander Morgado c9c2a9aa4d broadband-modem: default URC enabling/disabling implementation 2012-03-15 14:14:56 +01:00
Aleksander Morgado 1f01274a5f broadband-modem: implement generic USSD support check 2012-03-15 14:14:56 +01:00
Aleksander Morgado a54226a0dd broadband-modem: implement the 3GPP/USSD interface 2012-03-15 14:14:56 +01:00
Aleksander Morgado 5667339ead broadband-modem: implement the default setup/enable unsolicited events logic 2012-03-15 14:14:55 +01:00
Aleksander Morgado af1f8ed6b3 broadband-modem: disconnect all bearers when disabling 2012-03-15 14:14:54 +01:00
Aleksander Morgado 1d450d7c4e broadband-modem: by default, just create a single broadband bearer 2012-03-15 14:14:54 +01:00
Aleksander Morgado 7e36f04b37 core: use new enums/flags string getters/builders 2012-03-15 14:14:52 +01:00
Aleksander Morgado bcdd376b6b iface-modem-3gpp, broadband-modem: update LAC/CI 3gpp-based location 2012-03-15 14:14:52 +01:00
Aleksander Morgado 182a954205 broadband-modem: enable/disable the Location interface 2012-03-15 14:14:52 +01:00
Aleksander Morgado 74f29981c8 broadband-modem: load default location reporting capabilities
Currently, only LAC/CI if the modem has 3GPP capabilities.
2012-03-15 14:14:52 +01:00
Aleksander Morgado d7f98cf277 broadband-modem: implement the Location interface 2012-03-15 14:14:51 +01:00
Aleksander Morgado e5c5411d05 broadband-modem: redefine generic supported mode loading implementation
* assume CDMA1x is 2G
 * consider CS/PS/CDMA1x/EVDO network support flags specified by the plugins
2012-03-15 14:14:50 +01:00
Aleksander Morgado 8adc9cd699 broadband-modem: we can expect non-LTE 3GPP+CDMA modems 2012-03-15 14:14:50 +01:00
Aleksander Morgado c0e0649a82 core,plugins: handle missing `last_command' flags
These didn't get compilation errors when `MMBaseModemAtResponseProcessor'
was changed, as we're doing an explicit casting.
2012-03-15 14:14:50 +01:00
Aleksander Morgado 8782df1b15 broadband-modem: on mixed CDMA+LTE modems, guess which kind of bearer to create 2012-03-15 14:14:49 +01:00
Aleksander Morgado a0255273f0 iface-modem-cdma: let caller decide the maximum registration timeout 2012-03-15 14:14:49 +01:00
Aleksander Morgado cc4e469b1a iface-modem-3gpp: let caller decide the maximum registration timeout 2012-03-15 14:14:49 +01:00
Aleksander Morgado 787a651f19 broadband-modem: implement CDMA registration method
Will wait up to 60s to be registered in the CDMA network.
2012-03-15 14:14:49 +01:00
Aleksander Morgado 205dc51cb5 broadband-modem: refactor the code a bit
* Include interface-specific prefixes in methods implemented (e.g.
   'modem_3gpp_' for all 3GPP interface method implementations.

 * Pack together in the private struct variables required in the implementation
   of a given interface.
2012-03-15 14:14:49 +01:00
Aleksander Morgado b74c01478e broadband-modem: set auto registration with AT+COPS=0
This is, remove the use of "AT+COPS=0,,". The extra commas break its use in a
Nokia C7, and the proper/clean way to do it anyway is to avoid using the commas.
2012-03-15 14:14:49 +01:00
Dan Williams c697027cee broadband-modem: fix check for QCDM capability
has_qcdm_port was never set to TRUE anywhere...
2012-03-15 14:14:48 +01:00
Dan Williams 98755bd508 broadband-modem: ignore early AT error responses for modem info
Where we have multiple commands that are all supposed to return
the same thing (ie, GMM/CGMM, CSQ/CSQ?) but some modems
support one and not the other, don't exit the sequence early if
the modem doesn't support one of them.

Gobi modems with CDMA firmware don't support the Cxxx variants
so the returned ERROR (CME error 100) made the generic parser
break out of the AT sequence without trying the additional
commands that are supported.
2012-03-15 14:14:48 +01:00
Dan Williams cb2d6d6105 base-modem-at: indicate sequence status to response parsers
Let parsers know if this command is the last in a sequence since
they may want to handle errors differently if that's the case.
2012-03-15 14:14:48 +01:00
Aleksander Morgado 2a0deb47f4 bearer-cdma: avoid the need of the modem object during new_finish() 2012-03-15 14:14:48 +01:00
Aleksander Morgado 91eb041a63 bearer-3gpp: avoid the need of the modem object during new_finish() 2012-03-15 14:14:48 +01:00
Aleksander Morgado 7db16d2279 bearer: make bearer creation an asynchronous operation
We may want to do some checks while creating a new bearer.
2012-03-15 14:14:47 +01:00
Aleksander Morgado 6a38bcf1a1 broadband-modem: setup 3GPP and CDMA bearer creation logic
On mixed CDMA+LTE modems, just default to create a 3GPP bearer.
2012-03-15 14:14:47 +01:00
Aleksander Morgado 2c0c668462 iface-modem-cdma: load NID if available in the CDMA status QCDM response 2012-03-15 14:14:46 +01:00
Aleksander Morgado 6d76f1755f broadband-modem: implement default detailed CDMA registration getter
Fully based on Sprint commands
2012-03-15 14:14:46 +01:00
Aleksander Morgado a767c2c523 broadband-modem: skip CDMA registration check steps on default implementation
If we know that there is no QCDM port, skip QCDM-based checks.
If we know there are Sprint commands, skip CDMA1x Serving System check.
If we know there are no Sprint commands, skip detailed registration getter.
2012-03-15 14:14:46 +01:00
Aleksander Morgado 9b860021a0 broadband-modem: set NO_NETWORK error if we couldn't get SID from CDMA1x SS checks 2012-03-15 14:14:45 +01:00
Aleksander Morgado 65c14607cd broadband-modem: add LTE capability checks 2012-03-15 14:14:45 +01:00