Commit Graph

416 Commits

Author SHA1 Message Date
Aleksander Morgado
8c8e5efa14 cinterion: SMS storage mem3 doesn't support 'ME' 2012-03-15 14:15:03 +01:00
Aleksander Morgado
a826e7c8ae cinterion: fix power down sequence
Need to complete the operation result at some point!
2012-03-15 14:15:02 +01:00
Aleksander Morgado
a8ca3df9be plugins: always set a proper error domain in GErrors 2012-03-15 14:15:00 +01:00
Aleksander Morgado
18531e5a2d cinterion: implement supported bands loading logic 2012-03-15 14:14:56 +01:00
Aleksander Morgado
45ca92ee2e cinterion: implement allowed modes setting logic 2012-03-15 14:14:56 +01:00
Aleksander Morgado
a6301ee0c4 cinterion: implement access technology loading logic 2012-03-15 14:14:56 +01:00
Aleksander Morgado
6d5c98b30c cinterion: implement custom unsolicited events enabling command 2012-03-15 14:14:56 +01:00
Aleksander Morgado
15f2c56f89 cinterion: avoid after-power-up step
Split the after power up step into:
 * querying supported functionality status during the first power-down request.
 * querying supported networks during supported modes loading.
2012-03-15 14:14:51 +01:00
Aleksander Morgado
771e3c4ff7 nokia: plugin fully ported to the new codebase 2012-03-15 14:14:50 +01:00
Aleksander Morgado
983f081f30 nokia: include port type hints
Ported commit 44194ac to the new codebase.
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
Dan Williams
ded020efeb gobi: ensure QCDM ports are correctly grabbed
Need to suggest that it's QCDM since the MMPortProbe stuff
doesn't get passed through to mm_base_modem_grab_port() so
we can't detect QCDM ports automatically there.
2012-03-15 14:14:48 +01:00
Dan Williams
0ccfcbd986 gobi: port to 06-api 2012-03-15 14:14:48 +01:00
Aleksander Morgado
41bf841334 generic: allow QCDM ports 2012-03-15 14:14:42 +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
0384483121 nokia: start porting the Nokia plugin to the new codebase 2012-03-15 14:14:33 +01:00
Aleksander Morgado
88cc35b850 cinterion: ignore non-AT ports 2012-03-15 14:14:33 +01:00
Aleksander Morgado
71bf6b0048 cinterion: start porting features from the old implementation
Currently ported:
 * Power Down
 * Flow control
 * After power up setup:
   ** Available functionality status
   ** Supported networks
2012-03-15 14:14:31 +01:00
Aleksander Morgado
c345f5fe63 cinterion: re-enabled Cinterion plugin
Just dummy plugin for now.
2012-03-15 14:14:31 +01:00
Aleksander Morgado
c58db4e015 core: start using our newly defined errors 2012-03-15 14:14:25 +01:00
Aleksander Morgado
86aa9df849 core: start using MMBroadbandModem objects
We chain up the Generic plugin created MMBroadbandModem objects within the
GDBusObjectManagerServer in MMManager, so that they get properly exported in
DBus.
2012-03-15 14:14:24 +01:00
Aleksander Morgado
2588c17ad3 generic: rewrite the plugin to use the new port probing 2012-03-15 14:14:21 +01:00
Aleksander Morgado
7b687b4aae build: temporarily disable compilation of plugins 2012-03-15 14:14:21 +01:00
Aleksander Morgado
6b69605633 build: chain up new 0.6 API and link against libmm-common
Also removed the MMSerialError implementation from `src/mm-errors.[h|c]', as it
is now included in the new `include/ModemManager-errors.h' header file. All the
other enums and errors without clashing names will be ported afterwards to the
new base code.
2012-03-15 14:14:19 +01:00
Aleksander Morgado
da99e8ddad build: use common CPPFLAGS and LDFLAGS for all plugins
Also include $(top_srcdir)/generated and $(top_builddir)/generated in the
common preprocessor flags.
2012-03-15 14:14:18 +01:00
Aleksander Morgado
8e83a10c1e hso: disable echo removal
Built-in echo removal conflicts with _OWANCALL unsolicited messages, which are
not coming prefixed with <CR><LF>.

Fixes LP#953294
2012-03-13 20:14:58 +01:00
Aleksander Morgado
7c9ba7faf2 samsung: remove unused variables 2012-03-05 16:59:52 +01:00
Dan Williams
30e7063094 iridium: convert to new port grabbing scheme 2012-02-28 10:06:04 -06:00
Dan Williams
4dad94d500 core: rework port grabbing and organization
Make port roles more flexible.  We have modems that do PPP
on interfaces other than the primary interface, and that
wasn't possible with the old code.  So clean up all that
logic and move the port organization code into the core
so we can reduce code in the plugins.

In the new world order, the plugins say whether the port
is a QCDM port, an AT port, or ignored.  If it's an AT
port the plugins get to tag it as primary, secondary, or
PPP, or any combination of the 3.  This allows for modems
where PPP should really be done on the secondary port
(Huawei E220, Sierra devices) so that the primary port
stays open for command and status.

Modem subclasses no longer get asked to handle port grabbing
themselves.  Instead, that's now done by the generic classes
(MMGenericCdma and MMGenericGsm) and the plugins are notified
when a port is grabbed so they can add unsolicited response
handlers for it.  After all ports are grabbed by the generic
classes, they get "organized", which assigns various ports
to the roles of PRIMARY, SECONDARY, DATA, and QCDM based
on specific rules and hints that the plugin provided (which
are expressed as MMAtPortFlags).  The plugins then have
a chance to perform fixups on the primary port if they choose.

The plugin code is responsible for determining the port
hints (ie MMAtPortFlags) at probe time, instead of having
a combination of the plugin and the modem class do the
job.  This simplifies things greatly for the plugins at
the expense of more complicated logic in the core.
2012-02-28 10:06:04 -06:00
Aleksander Morgado
f2af208f05 iridium: don't try to update signal quality if not registered
Seems that launching AT+CSQF when not registered ends up timing out. AT+CSQF
is meant to be the fast version to get the signal quality, and is expected to
return instantly with the last cached signal quality value. But if we never
got registered, there is no such cached value, so it probably waits to get the
first one.
2012-02-17 13:25:03 +01:00
Aleksander Morgado
5371cce11d iridium: ensure cached capabilities get checked 2012-02-17 13:25:03 +01:00
Aleksander Morgado
fc88c53fad iridium: handle Motorola-branded Iridium modems 2012-02-17 13:25:03 +01:00
Aleksander Morgado
8b1016f4e1 iridium: close and open the port during disconnection
The Iridium modem doesn't seem to like only the port flashing during the
disconnection, so we fully close and open again the port.
2012-02-17 13:25:03 +01:00
Aleksander Morgado
d52b38b1f2 iridium: set bearer service type to 9600bps V.110 2012-02-17 13:25:03 +01:00
Aleksander Morgado
707647da45 iridium: override generic initialization
We must send ATZ alone and once reply received, wait some time before sending
the next initialization commands. Otherwise, the next commands will receive
garbage as reply. The only way to handle this is to override the whole generic
initialization phase.

We will also avoid sending any power-up command, as not needed.
2012-02-17 13:25:03 +01:00
Aleksander Morgado
c0f390470e iridium: allow up to 200s to configure IP 2012-02-17 13:25:03 +01:00
Aleksander Morgado
e6d085246f iridium: ensure 9600 baudrate is used 2012-02-17 13:25:03 +01:00
Aleksander Morgado
4b0cd28baf iridium: fix operator name and code to be reported 2012-02-17 13:25:02 +01:00
Aleksander Morgado
4ed3391859 iridium: PS network is not supported 2012-02-17 13:25:02 +01:00
Aleksander Morgado
0c6eb6dcaa iridium: handle access technology 2012-02-17 13:25:02 +01:00
Aleksander Morgado
156a05afe0 iridium: handle allowed mode 2012-02-17 13:25:02 +01:00
Aleksander Morgado
85de9bbcc9 iridium: override signal quality retrieval command 2012-02-17 13:25:02 +01:00
Aleksander Morgado
b7b37c4738 iridium: override SMS indications setup commands 2012-02-17 13:25:02 +01:00
Aleksander Morgado
1c6e17857f iridium: skip ICCID/IMSI query 2012-02-17 13:25:02 +01:00
Aleksander Morgado
b714441272 iridium: disable power up command and modify flow control setup 2012-02-17 13:25:02 +01:00
Aleksander Morgado
670f560b3d iridium: add initial dummy plugin 2012-02-17 13:25:02 +01:00
Dan Williams
681a24c8d8 novatel: override message storage and notification
It seems that even though the firmware says it supports
specific CNMI notification values, it really doesn't.  Also
set storage to the SIM until we support automatically
determining the right storage in MM.  XU870 does not
support ME storage according to +CPMS=?.
2012-02-02 21:09:48 -06:00
Thomas Tuttle
5fc4e866c2 time: implement in icera
Signed-off-by: Thomas Tuttle <ttuttle@chromium.org>
2012-01-27 15:14:27 -06:00
Dan Williams
2f1d8f7fb3 nokia: fix PPP port for CSxx Internet Sticks
USB interface 0 isn't a serial interface; it's probably a custom
Nokia PhoNet port or a custom Icera pseudo-ethernet port.  But
it's not a CDC-ACM serial port, at least on the CS17.

Reported by Uwe Geuder.
2012-01-09 14:53:39 -06:00
Dan Williams
30bb9e878f cdma: fixes for libqcdm changes 2012-01-03 00:30:59 -06:00