Commit Graph

3500 Commits

Author SHA1 Message Date
Dan Williams
14442c1a5b qcdm: add comment 2010-05-07 02:06:48 -07:00
Dan Williams
425c28dfc1 longcheer: handle TAMobile/Alcatel X060s vendor ID too
These are Longcheer-based devices, but the vendor ID is different.
We had tagged the X060s' ports in the rules but never updated the
plugin to handle the different vendor ID.
2010-05-06 15:28:43 -07:00
Dan Williams
246817fe54 serial: fix possible segfault handing port-full signals
The argument passed to the handler is a GByteArray, not a
GString.  Encountered with Option iCON Icera-based devices,
but could also be possible with Sierra devices.
2010-05-05 15:49:33 -07:00
Dan Williams
9a6aa0c10d option/hso: eat +PACSP0 unsolicited response
Interfered with initial PIN checking in some cases.
2010-05-05 15:47:14 -07:00
Dan Williams
f63188eb26 core: log modem data port 2010-05-05 01:04:20 -07:00
Dan Williams
885bc90be9 gsm/cdma: fix data port assignment (rh #587400)
QCDM ports should never be the data port; 'net' ports take precedence
over AT ports too.  Clarify that.
2010-05-04 17:34:11 -07:00
Dan Williams
26a3fe3f53 trivial: use property name constant 2010-05-04 17:31:22 -07:00
Dan Williams
13b82e5d1c trivial: tweak debug message 2010-05-04 17:31:01 -07:00
Dan Williams
565d9343f6 core: print out port type when port is claimed 2010-05-04 16:58:44 -07:00
Dan Williams
0c3961441b core: add port type -> string conversion helper for debuggin messages 2010-05-04 16:58:18 -07:00
Dan Williams
f0e0861aa4 longcheer: add support for access technology and allowed modes 2010-05-01 22:44:00 -07:00
Dan Williams
da8cf4a7c2 gsm: use generic string -> access technology helper 2010-05-01 22:42:58 -07:00
Dan Williams
5769929668 helpers: add generic helper for string -> access technology 2010-05-01 22:41:33 -07:00
Dan Williams
de5f1bd4e9 core: clear error before use 2010-05-01 22:34:59 -07:00
Dan Williams
4c3eedd955 longcheer: add more Zoom product tags (4595, 4596, etc) 2010-05-01 11:15:49 -07:00
Dan Williams
c6cb5acfe1 gsm: periodically poll access technology too
Not all devices support unsolicited responses for access technology,
so lets poll it periodically along with registration state and
signal quality.
2010-04-30 00:44:24 -07:00
Dan Williams
de86b71b3d zte: fix getting GSM allowed mode 2010-04-30 00:35:30 -07:00
Dan Williams
30473ce7c9 novatel: implement allowed modes and access technology 2010-04-30 00:32:54 -07:00
Dan Williams
bfe3dd49ed core: refcount serial port open/close
This specifically fixes a regression with Novatel GSM secondary
AT port enablement, where the inital pin check closed the port
before the Novatel plugin could send the command to flip secondary
ports to AT mode.

But it's useful elsewhere too, and simplifies a bunch of the PIN
checking code which had to use various ugly methods to track whether
to close the port or not after checking the PIN.
2010-04-29 21:15:17 -07:00
Dan Williams
26a51d6ab9 gsm: try both CREG and CGREG during initial registration checking
Some devices (Blackberries via DUN) appear to always return an error
for  AT+CREG, which is valid in some cases.  If that happens lets also
try AT+CGREG too, which on these devices responds with the correct
packet data registration state.
2010-04-29 19:40:41 -07:00
Dan Williams
a13becc225 core: timestamp debug statements 2010-04-29 18:59:11 -07:00
Dan Williams
fbfb7f8953 novatel: let generic CDMA class handle signal strength while connected
Instead of returning an unhelpful error when there isn't a second
AT port (which there never will be for Novatel CDMA devices) we should
let the superclass handle the request.
2010-04-29 18:57:49 -07:00
Dan Williams
1864d8da07 core: add platform device support and whitelist 2010-04-29 12:17:56 -07:00
Torgny Johansson
921048b12e mbm: add Dell 5541 and 5542 2010-04-29 11:28:19 -07:00
Dan Williams
a4c094c340 core: fix serial error #defines
Should have ERROR in them.
2010-04-24 23:44:35 -07:00
Dan Williams
b9bb12a01e core: flash failure on disconnect shouldn't be a hard error (rh #578280) 2010-04-24 23:40:24 -07:00
Dan Williams
411051b1f3 mbm: add Sony Ericsson MD400 device IDs 2010-04-24 23:16:45 -07:00
Dan Williams
01cb6360f8 cdma: prevent crash on modem removal (rh #571921) 2010-04-24 23:12:16 -07:00
Dan Williams
44deca2c5a core: blacklist Gemplus smarcard reader (bgo #608022) 2010-04-09 19:38:22 -07:00
Dan Williams
78c232c2d1 core: actually ignore blacklisted devices 2010-04-09 19:32:47 -07:00
Dan Williams
387b64a92b core: allow blacklisting various devices (rh #544121) (bgo #608022) 2010-04-09 19:22:19 -07:00
Dan Williams
c96e736700 test: fix lsudev crash 2010-04-09 19:03:03 -07:00
Dan Williams
41ca10e92d core: get correct PCMCIA master device
The master device of PCMCIA-provided ports is typically the
last device in the PCMCIA subsystem, because the PCMCIA
controller is usually a PCI device or some other subsystem.
2010-04-09 17:33:22 -07:00
Dan Williams
da74f6d8ec gsm: recheck modem lock status a few times after sending unlock request (bgo #613490)
Some devices (ZTE MF110	for example) respond immediately to the unlock
request, but in reality take a bit of time before they are actually
unlocked.  Check PIN status a few times after sending the unlock.
2010-04-09 17:11:56 -07:00
Dan Williams
0d381e2f11 gsm: fix CSCS=? parsing and add testcases
Some devices (at least one Blackberry we know about) don't include
the () around the response.  Handle that and add testcases for it.
2010-04-09 13:50:45 -07:00
Dan Williams
b51a9d27e5 gsm: don't require +CMEE=1 success
Some devices apparently don't like it (even though it's required
in the standards) and since we can deal without it, don't require
+CMEE=1 to complete successfully.
2010-04-07 15:11:32 -07:00
Dan Williams
7aeac2f646 mbm: fix getting current allowed mode 2010-04-07 15:04:32 -07:00
Dan Williams
f3dd034aad cdma: fix subclass registration state checking in error paths (rh #569067)
The generic CDMA superclass already checks minimal registration state,
and when some of the additional query_registration_state() subclass checks
were being performed, if the device returned an error (if it didn't support
the subclass' specific registration command like *STATE or ^SYSINFO) the
superclass' registration state checks would be thrown away.

Fix that by specifying the behavior of the subclass'
query_registration_state() methods to ignore most errors and leave the
superclass' registration state intact if a non-critical error occurs.
2010-04-05 18:46:53 -07:00
Dan Williams
49c363d83a core: fix handling of deferred ports during probe
The next plugin logic was wrong when a previous plugin had already
claimed support for the port and the Generic plugin was next.  In
that case, the code failed to call the functions to actually grab
the port.
2010-04-05 12:26:12 -07:00
Dan Williams
0108a36d27 serial: let port subclasses handle their own debug logging
We want to print out QCDM messages as hex, not ASCII.  So let
each port type print out it's own communication as it wants to.
2010-04-05 12:01:54 -07:00
Dan Williams
bac945a8e4 core: fix supports check for last plugin (rh #579247)
Since Generic is always last, it was getting ignored by this
off-by-one bug caused by a previous patch.
2010-04-05 11:15:09 -07:00
Dan Williams
a55265f03a gsm: clean up periodic poll start/stop and poll signal strength 2010-04-05 10:47:14 -07:00
Dan Williams
7da2b5cb6a cdma: clean up periodic poll start/stop
And fix a small bug where polling wasn't started for the ENABLED state.
2010-04-05 10:38:39 -07:00
Dan Williams
9112180f8a cdma: periodically poll registration state and quality 2010-04-05 09:58:12 -07:00
Dan Williams
2f1fbfb520 core: only enable location API for dbus-glib >= 0.86 2010-04-04 09:17:08 -07:00
Dan Williams
f39afdd5f7 qcdm: fix endian issues for BE platforms
And add a testcase for packet encapsulation to ensure we don't
have further endian issues in the future.
2010-03-31 20:24:12 -07:00
Dan Williams
4d89b519b4 core: don't advance to next plugin until needed
Otherwise info->cur_plugin is wrong (and therefore we left uncleared
supports tasks in MMPluginBase) when the port isn't supported by
the plugin, but it's parent modem device was supported by the plugin.
Like when all probing of the port fails but one of it's siblings has
already been claimed by a modem; in this case we just drop the port
(so that no other plugin could try to claim it, because only one
plugin is allowed to handle all a modem's ports) but we still need
to tell the parent modem's plugin to clean up the supports task.
2010-03-31 03:05:22 -07:00
Dan Williams
40a713be6f core: pass try_supports_port() the existing modem 2010-03-30 23:36:08 -07:00
Dan Williams
4753f7360b core: don't re-export modems after db413acc4e
If a port is found by the kernel after the modem is already exported,
make sure we don't re-export the modem after the tardy port is handled.
2010-03-30 23:28:26 -07:00
Dan Williams
d2e12742c4 cdma: use best active pilot EC/IO for signal strength when connected
If the modem doesn't have two AT ports (so one can be used for AT+CSQ
while connected) get the 1x active pilot's EC/IO and use that for
signal strength.
2010-03-30 17:28:13 -07:00