Commit Graph

2375 Commits

Author SHA1 Message Date
Jason Glasgow
2dbca0baf8 core: make modem StateChanged signal consistent with API documentation
The new and old state arguments were flipped.
2011-03-31 15:29:12 -05:00
Dan Williams
35b3e348e6 samsung: drop PORT_TYPE_ECM
Isn't really needed since it's just the same as any other net
device port type.
2011-03-27 15:23:44 -05:00
Jun Woo Lee
4ad0c01be0 modemmanager: Add support for Samsung Y3300 modem
BUG=chrome-os-partner:2394
TEST=gmerge modemmanager, watch logs, see detected as Samsung modem, connect to AT&T network

Review URL: http://codereview.chromium.org/6614026
Patch from Jun Woo Lee <jw86.lee@samsung.com>.

Change-Id: I913628ff4a1cd16c8180e3c808644b0134e69e31
2011-03-11 21:50:05 -06:00
Dan Williams
0c4b94458a gsm: fix for parsing malformed Gobi CREG response
From an HP un2400;

GMR: D1020-SUUAASFA-4352  1  [Apr 14 2008 18:00:00]
GMM: 88
2011-03-11 21:36:55 -06:00
Thomas Bechtold
b3b1d5309a core: allow plugins to handle custom init responses 2011-03-11 20:25:22 -06:00
Michael Biebl
871097327b logging: use glong for secs and usecs 2011-02-25 18:21:52 -06:00
Dan Williams
f340ce86cd cdma: ensure the ActivationStateChanged signal exists
It's part of the D-Bus API, so it needs to be implemented somewhere
even if it's not used yet.
2011-02-25 12:26:30 -06:00
Dan Williams
7707117862 log: fix spacing so messages line up 2011-02-25 11:18:55 -06:00
Tom Bechtold
92e4127c7d core: allow platform devices without a VID/PID
Since platform devices don't usually have them.
2011-02-10 12:07:54 -06: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
245b893e98 logging: make gcc 4.4.3 happy about ignored unused results 2011-01-24 14:13:28 -06:00
Dan Williams
98ec26283a logging: shut up compiler warnings about unused result from write(2)
We actually don't care about the result here.  But we do in other
places, so we want to keep the warning in general.
2011-01-24 14:05:07 -06:00
Dan Williams
12f1b351e8 rules: blacklist some unlikely USB serial dongles (rh #544121) 2011-01-24 12:39:13 -06:00
Dan Williams
d909c4876b core: minor code cleanups 2011-01-24 00:09:55 -06:00
Dan Williams
3ee40ddbce core: add logging when ports get removed 2011-01-24 00:05:20 -06:00
Dan Williams
44c11adadc core: add mm_port_subsys_to_name() 2011-01-24 00:05:08 -06:00
Dan Williams
476cc44bc1 gsm: enable unsolicited codes on secondary ports too (bgo #637140)
We want to enable unsolicited responses on secondary ports too,
so that if the modem only sends unsolicited responses on the ports
on which they were enabled, that we can get resposnes off the
secondary port when the primary port is connected.  But we can't
always trust devices to actually send them on the secondary port,
so we enable the unsolicited responses on both the primary and
secondary ports just in case.
2011-01-23 23:36:52 -06:00
Dan Williams
6f08206ac8 core: enable timestamps with legacy --debug option 2011-01-23 23:21:58 -06:00
Dan Williams
16039244bb core: rework logging
Make it more flexible, add logging to a file, and absolute and
relative timestamps.
2011-01-23 20:51:48 -06:00
Guido Günther
d44ae44558 gsm: wire up USSD Respond function (bgo #638038) 2011-01-14 12:25:05 -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
Michał Sroczyński
f4d4569cdd gsm: correctly parse Samsung S8500 Wave CREG response
(testcases by dcbw)
2011-01-11 13:42:54 -06:00
Dan Williams
794353ebcc cdma: update reg state to HOME based on SPERI response
If the SPERI response indicates the home network, then set
CDMA registration to HOME if it was REGISTERED (which is
less specific).
2011-01-05 11:15:11 -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
b0cd9288c2 cdma: fix CDMA registration state retrieval on single AT port devices
If the device only has one AT port that's being used for data and
thus we can't do more specific registration checking in MMGenericCdma
using AT commands, but generic registration checking was successful,
just use the less specific state.

Previously, an error would be returned when no AT port was available
even though less specific QCDM registration checking worked.  That
was just stupid.
2011-01-04 14:06:03 -06:00
Dan Williams
ceb5cc29d6 core: signal property changes for IpMethod
If the modem's IP Method changes after construction because the
modem's full capabilities were only discovered after it was created,
make sure the change notification gets emitted.
2011-01-01 17:47:40 -06:00
Dan Williams
a502fd2b19 gsm: add access technology support for HSPA+ 2011-01-01 11:55:41 -06:00
Dan Williams
292c98029d test: fix CIND test index checking
CIND indexes returned from helper are 1-based, not 0-based, because
that makes it easier to match against the modem's unsolicited CIND
message.
2010-12-21 11:54:47 -06: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
Elly Jones
48169926f4 Don't probe virtual devices before they exist
Prevent ModemManager from probing virtual devices before their
associated files exist in /dev tree.

Contributed by Nasser Grainawi <nasser@codeaurora.org>

Review URL: http://codereview.chromium.org/2118005
(cherry picked from commit 617660e3572a7b79ed83f9fc0fda89b7efcb2d4d)

Conflicts:

	src/mm-plugin-base.c

Change-Id: Ie5e8b98fb6b6c69e294175523ef99c934092433b
2010-12-20 12:41:03 -05:00
Elly Jones
245818de33 Install xml files so they can be used by cromo (chromeos modem manager)
Amended: Install the files under their proper DBus names.

Review URL: http://codereview.chromium.org/1618004
(cherry picked from commit 89f7f05f1294485fa8b44cfdd3c9b0d924d45ac1)

Conflicts:

	Makefile.am

Change-Id: I65b2b0c1b5e579bb5b1d5d5b390c3be2ae49543c
2010-12-20 12:23:41 -05:00
Elly Jones
d32eeec9ea Update from Qualcomm to support smd devices in Modem Manager
Review URL: http://codereview.chromium.org/661471
(cherry picked from commit 8475eb44b7ea41afa823919b017a39d82b07a5a2)

Conflicts:

	src/mm-plugin-base.c

Change-Id: I825886cad62a27acb39dfe74da7028d83adf692a
2010-12-20 11:05:49 -05:00
Dan Williams
00b0b70f5d bluetooth: tag 'moved' bluetooth ttys as candidates
The kernel appears to add the device first without any parents,
then to move it to the correct place in the hierarchy, with its
immediate parent being the device's HCI controller.  So we need
to capture the 'move' event too since that's when the rfcomm
device is finally usable.
2010-12-19 15:18:12 -06:00
Dan Williams
a4e620aca0 bluetooth: ensure bluetooth rfcomm devices get tagged as candidates 2010-12-19 15:07:56 -06:00
Dan Williams
d2ce75b57a core: separate PropertiesChanged signal XML
Which requires that we turn it into a GInterface that MMModemBase
can implement, because dbus-glib does not allow attaching more
than one introspection glue structure to an object at a time.

Also implement the standard D-Bus properties changed signal.
2010-12-17 16:27:55 -06:00
Dan Williams
592d71ff76 core: work around udev parallel startup race
Ignore devices that aren't completely configured by udev yet.  If
ModemManager is started in parallel with udev, explicitly requesting
devices may return devices for which not all udev rules have yet been
applied (a bug in udev/gudev).  Since we often need those rules to match
the device to a specific ModemManager driver, we need to ensure that all
rules have been processed before handling a device.

Do this by adding an item to the environment of each device that MM
might possibly be interested in, and ignoring devices that don't
have that.  When the device is fully processed by udev, MM will get
an 'add' event and the device will have all rules applied.
2010-12-08 17:04:59 -06:00
Dan Williams
ea0797cbec gsm: prefer AT+CIND signal quality for modems that support it (lp:682282) (bgo #636040)
Some devices always reply with 99 for AT+CSQ when in UMTS mode (Linktop LW273)
so if the modem supports it, use CIND/CIEV instead.
2010-11-30 10:04:46 -06:00
Dan Williams
586c9ec2c5 gsm: don't poll signal quality if it was recently updated 2010-11-29 12:01:42 -06:00
Dan Williams
5419f1f195 core: allow setting IP method after construction
Some modems might not know their IP method until after the
modem object has been created.
2010-11-29 00:21:44 -06:00
Dan Williams
c1232e2534 serial: print debug data unsigned 2010-11-28 23:10:27 -06:00
Dan Williams
dc95f531ad gsm: query signal strength with +CIND if modem does not support +CSQ (lp:682282) 2010-11-28 22:46:03 -06:00
Dan Williams
6d37c9b471 core: +CIND indexes start at 1 2010-11-28 21:46:27 -06:00
Dan Williams
2dd59c3ddd core: add index to CIND helper 2010-11-28 21:34:00 -06:00
Dan Williams
9479c04aec core: add +CIND parsing helpers 2010-11-28 19:45:53 -06:00
Dan Williams
802a6f3a56 gsm: fix up CID signed/unsigned confusion
-1 = no APN set, so use modem default.  We'll have to fix a few
more things up for modems like hso/mbm that don't use ATDT and
require CIDs, but this gets us halfway there for other devices.
2010-11-10 13:16:19 -06:00
Dan Williams
d2ab1d7f78 gsm: fix up USSD property exports
If the base class advertises that it implements an interface, it
really does need to implement all that interface's properties too.
Otherwise dbus-glib gets mad and can't look up the property information
for D-Bus Introspection.
2010-11-08 10:24:26 -06:00
Guido Günther
3c13d9aec8 gsm: add preliminary USSD support (bgo #590798)
We currently convert to and from the modem's set charset and always pass
'15' as the data coding scheme. Passing the correct data coding scheme
as third argument to CUSD only upsets the network. This contradicts 3GPP
TS 23.038. Other tools like gsm-ussd handle it the same way.

Network responses that require further actions are not yet implemented.

(some fixes and cleanups by Dan Williams)
2010-11-05 14:50:50 -05:00
Dan Williams
2a98b2ae2d core: add bin -> hex string converter 2010-11-05 14:44:20 -05:00
Dan Williams
6921a9f71d core: unconditionally enable the Location Services API
This required dbus-glib 0.86 or later, which was released 2010-03-24.
2010-11-05 14:03:44 -05:00
Dan Williams
a2d54b1437 trivial: avoid build warning by using g_message() correctly 2010-11-03 10:03:51 -05:00