Commit Graph

299 Commits

Author SHA1 Message Date
Dan Williams
3245ea3193 huawei: don't need AT prefix 2009-10-12 10:56:11 -07:00
Dan Williams
958b9048a3 cdma: split 1x and EVDO registration states
Like UMTS vs. GSM, EVDO and 1x are separate networks and technologies
and have separate registration state.  You can even be roaming on
EVDO while in your home 1x network.  Handle that.
2009-10-12 10:06:53 -07:00
Alexander Sack
3f51cf421e huawei: adjust printf-style format to fix 32-bit gcc-4.4 builds 2009-10-12 12:19:12 +02:00
Dan Williams
1f0be4a2e9 huawei: remove debugging stuff 2009-10-11 11:44:34 -07:00
Dan Williams
f0dc449c50 sierra: rename MMModemSierra -> MMModemSierraGsm 2009-10-11 11:39:18 -07:00
Dan Williams
81163b3032 huawei: add CDMA device subclass and implement registration state handling 2009-10-11 11:27:29 -07:00
Dan Williams
21391286fc huawei: rename MMModemHuawei -> MMModemHuaweiGsm 2009-10-11 11:19:00 -07:00
Dan Williams
5079b32a09 hso: fix disable 2009-10-06 11:45:07 -07:00
Dan Williams
912b98723b Merge commit 'origin/master' into enable-split 2009-10-05 09:52:01 -07:00
Dan Williams
e5441115a2 bluetooth: recognize rfcomm devices
Two hacks here:
1) rfcomm ports don't have an easily accessible driver name, so we just
match the parent's subsystem to 'bluetooth' and use that

2) libgudev doesn't seem be be able to get the rfcomm device's device file,
which would normally be /dev/rfcommX.  Oh well, we don't use the device file
yet anyway
2009-10-02 22:31:16 -07:00
Dan Williams
3b19a85727 core: split generic modem enable/disable operations 2009-09-23 16:04:25 -07:00
Eugene Crosser
2bad09403a nokia: don't use CFUN at all (lp430576)
CFUN=0 actually powers off the phone; CFUN=1 isn't really supported
on some phones either.  So just don't use CFUN at all.
2009-09-22 22:56:58 -07:00
Alexander Sack
feb00e4553 mbm: more permissive ESTKSMENU regexp 2009-09-21 15:42:30 -07:00
Torgny Johansson
3d178fafcf mbm: handle *EMWI unsolicited responses 2009-09-19 11:42:10 -07:00
Torgny Johansson
1f7bb908eb mbm: fix up +PACSP0 unsolicited response matching 2009-09-19 11:37:16 -07:00
Dan Williams
14e5c52f78 core: don't allow concurrent flashes on the same device
Previously, a few operations (like disable) could trigger a modem
flash in parallel with another flash.  That's wrong, don't allow
that.  At the same time, add in finer-grained error checking on
serial port speed operations, and fix a GSM generic bug that would
send the POWER_UP string on disable.
2009-09-08 17:34:04 -07:00
Alexander Sack
180ad403b8 mbm: parse and ignore unsolicited *ESTKSMENU message - lp:416418 2009-08-21 21:41:48 +02:00
Torgny Johansson
9e106eae1a mbm: add more USB IDs 2009-08-20 20:27:32 +02:00
Dan Williams
1a75d8d010 moto-c: claim Motorola C380 too (bgo #591978) 2009-08-19 17:08:13 -05:00
Alexander Sack
12ac98e9f6 license: add license header to all files and set copyright based on git log 2009-08-06 12:43:51 +02:00
Dan Williams
2d194a5798 gsm: harmonize band/mode enums
Use the same enum for set/get of band and mode, as for exposing the
device's capabilities.
2009-08-05 13:03:59 -04:00
Dan Williams
482053ce76 zte: fix udev rules 2009-07-15 22:00:36 -04:00
Dan Williams
d105ac8fd6 mbm: fix brand of some 'mbm' devices in udev rules
Should be just Ericsson, not Sony-Ericsson.  The MD300 is SE though.
2009-07-14 08:47:13 -04:00
Dan Williams
6610ded407 mbm: add more USB IDs 2009-07-10 12:19:20 -04:00
Dan Williams
736aa0d2d6 serial: rework 'connected' logic
So many modems just don't implement carrier detect that it makes
the previous 'connected' logic useless, so base it off connect/disconnect
and fix up a few places that didn't check connect status before
trying to send commands.  Also ensure the serial port is unlocked
for PPP to use when connected.
2009-07-06 11:40:22 -04:00
Dan Williams
869c69e223 zte: fix port tagging rules to actually work 2009-07-02 16:08:54 -04:00
Dan Williams
52da9990ee plugins: allow plugins to more easily suggest port types
ZTE modems need to use udev rules to assign port type hints,
so generalize that and port all the plugins over to suggested
port types in the MMModem interface's grab_port() function.
2009-07-02 13:48:30 -04:00
Dan Williams
5a563d56d1 sierra: handle APP[x] ports being recognized before the master port 2009-06-29 22:50:58 -04:00
Dan Williams
2730fe4539 moto-c: fix port grabbing; remove dead code 2009-06-29 22:50:37 -04:00
Dan Williams
36ee982b61 sierra: ensure port is valid before doing stuff to it 2009-06-29 22:50:16 -04:00
Dan Williams
e3eef316a5 generic: remove unused code 2009-06-29 16:51:06 -04:00
Dan Williams
c106368ce7 Merge commit 'origin/master' into udev 2009-06-29 13:14:11 -04:00
Dan Williams
04540bddb4 mbm: remove dead code 2009-06-29 12:59:59 -04:00
Torgny Johansson
3f5501906b mbm: fix +CIND quality parsing
Broken by Dan with ef0a604dc2
2009-06-29 10:34:33 -04:00
Dan Williams
ff58936f1f mbm: port to udev and new plugin API 2009-06-29 10:15:52 -04:00
Dan Williams
8ae41eeee3 hso: always mark netdev as supported 2009-06-29 10:09:26 -04:00
Dan Williams
c6d0174b41 hso: fix grab of netdev port 2009-06-29 09:00:25 -04:00
Dan Williams
504b4991cd Merge commit 'origin/master' into udev 2009-06-29 07:29:57 -04:00
Torgny Johansson
ef0a604dc2 mbm: merge updated Ericsson 'mbm' driver from git://gitorious.org/~torgny_j/modemmanager/mbm-mainline.git
And other cleanups by Dan.
2009-06-29 07:26:20 -04:00
Dan Williams
6077763d90 asynchronous and deferred port detection
Allow plugins to perform asynchronous port detection, and to defer port detection
until later.  This moves the prober bits into MMPluginBase so that all plugins
can take adavantage of it only when needed; the probing is not done at udev time.
Furthermore, plugins like Novatel can flip the secondary ports over the AT mode
through	deferred detection, by deferring the secondary ports until the main port
has been detected and AT$NWDMAT	has been sent.

This commit also finishes the port of the rest of the plugins (except mbm) over
to the new port detection methods and plugin API.
2009-06-28 14:05:05 -04:00
Dan Williams
05ab7b2a7c plugins: implement mm_plugin_base_get_device_ids()
We'll need it in more than one place, so make it generic.
2009-06-20 18:18:08 -04:00
Dan Williams
d5a43aa862 udev: modem port refactor; convert 'hso' to udev
Create a base MMPort class to handle both tty and net ports generically,
and move plugins over to that.  Also port the 'hso' plugin to udev.
2009-06-20 10:49:09 -04:00
Dan Williams
73e536c3c3 huawei: convert to udev and new API 2009-06-19 22:59:43 -04:00
Dan Williams
c3dd2eb070 moto-c: rebase onto MMPluginBase 2009-06-19 14:33:24 -04:00
Dan Williams
88bdb5d29a plugin: add a base class to handle modem tracking 2009-06-19 11:55:31 -04:00
Dan Williams
10b8674e5c gobi: add plugin for Qualcomm Gobi devices 2009-06-18 23:32:08 -04:00
Dan Williams
aa8d3241e5 moto-c: add plugin for Motorola C-series phones and BUSlink SCWi275u 2009-06-18 22:48:51 -04:00
Dan Williams
832b43cab5 generic: misc fixes 2009-06-18 22:35:58 -04:00
Dan Williams
924814c101 udev: move device probing and detection to udev
Get rid of dependency on HAL, using libgudev instead.  Fix up the plugin API
to no longer use either HAL or udev defines, but let plugins use whatever
mechanism they want for getting more information out of the device given the
subsystem and device node name.

Modems are now defined as "master" devices which "own" a one or more ports.
A port could be a serial tty device or a network device or whatever.  The
plugin figures out whether it supports a given port or not and then assigns
it to a new or existing modem.  Modems now have a 'valid' property that
should be set to TRUE when the modem has enough ports to operate correctly.
For devices (ex. 'hso') that use a network device for data transfer, the
modem would need to grab at least one TTY and the network device associated
with that physical device to be 'valid'.

Also move the generic modem support code to a plugin like other modem plugins,
and change the I-support-this-device mechanism to return a number indicating
the level of support.  For example, the generic plugin would return a quite
low number if the device indicates via probing that it can do GSM or CDMA, but
a more specific plugin can indicate better support for the device, and thus
the more specific plugin would win control.
2009-06-18 14:25:30 -04:00
Tambet Ingo
9b5425cdd9 Turn off carrier detection for all Huawei modems.
Find the monitoring device for Huawei modems by usb interface number.
2009-05-25 10:16:12 +03:00