Commit Graph

656 Commits

Author SHA1 Message Date
Marcel Holtmann 55209a77c1 gobi: Check for SIM status first before enabling SIM card 2011-01-22 13:02:35 +01:00
Marcel Holtmann 7985e53fe7 gobi: Enable vendor quirk for network registration 2011-01-22 12:38:49 +01:00
Marcel Holtmann e7a05dbfd3 gobi: Add support for SMS, CBS and USSD interfaces 2011-01-22 11:37:03 +01:00
Frédéric Danis b7590b08d2 bluetooth: Add reference count for bluetooth utils
Add bluetooth_ref()/bluetooth_unref() to support reference count in
bluetooth utils.
2011-01-20 12:20:47 +01:00
Lucas De Marchi a72115510a huawei: do not query sim state on pre_sim
Sim state is already known after modem is enabled and there's no need to
query it again. Before this patch, query_sim_state() was called upon
huawei_enable() and huawei_pre_sim(). Both functions might call
notify_sim_state() with a valid state. Hence we could eventually end up
sending AT+CFUN=5 command twice.
2011-01-19 15:39:49 +01:00
Marcel Holtmann a4d14ccb3e ifx: Remove modification of GIOChannel before multiplexer setup
After g_at_chat_new() call the GIOChannel is already in non blocking,
no encoding and no buffering mode. So no need for extra modifications.
2011-01-19 15:32:52 +01:00
Lucas De Marchi edaff4b505 huawei: do not set timer more than once
If a "^SYSINFO" arrives after the timer for query_sim_locked() has been
set up, it'd would set a new timer, signaling a sim state change more
than once.
2011-01-19 14:21:29 +01:00
Lasse Kunnasluoto f11402907a ste: Use UTF-8 as a default character set 2011-01-18 16:56:27 +01:00
Tomasz Gregorek 802b3acbd9 mbm: Remove data->reopen_source timer before setting up new one
Check if there is a timer running already and remove it before
creating a new one. This will prevent calling reopen_callback() more
than if mbm_disconnect() is called more than once.
2011-01-14 14:40:47 +01:00
Tomasz Gregorek d104573d54 mbm: Adding timer removal to mbm_remove()
In case the modem is disconnected during enabling process, mbm_disconnect()
will set up data->reopen_source timer. This timer needs to be
removed in mbm_remove() to stop execution of reopen_callback() after
hardware disconnection.
2011-01-14 14:39:37 +01:00
Jeevaka Badrappan 00a2335ed4 ifx: add ctm create to ifx plugin 2011-01-14 14:34:48 +01:00
Dara Spieker-Doyle e0e734619f nokiacdma: Add CDMA devinfo support 2011-01-13 16:15:36 -06:00
Dara Spieker-Doyle 492f0629ca udev: Add nokiacdma device 2011-01-12 23:14:23 -06:00
Dara Spieker-Doyle f8a65e6817 ofono-rules: Add nokiacdma device 2011-01-12 23:14:04 -06:00
Denis Kenzior df8ad0a738 nokiacdma: Minor fixes 2011-01-12 23:13:44 -06:00
Dara Spieker-Doyle 1c0a514578 nokiacdma: Add plugin and CDMA MO Call Support 2011-01-12 23:12:57 -06:00
Jeevaka Badrappan 04a8d58515 plugins: M15 coding style fix 2011-01-12 08:06:58 -08:00
Marcel Holtmann bd2f5db0ec udev: Add another Sierra Wireless modem to the list 2011-01-11 19:06:19 -08:00
Sjur Brændeland f8d3f8a7d3 plugin: Add ste modem init daemon integration
This patch introduces auto discovery of ST-Ericsson modems.
ST-Ericsson modems (M57XX, M7XX, M74XX) are managed by a
Modem Init Daemon responsible for start, power cycles,
flashing etc. This STE plugin monitors the modem state exposed
from the Modem Init Daemon's Dbus API. When the modem is in state
"on" the STE modem is created and registered. Muliple modem
instances, and reset handling is supported.
2011-01-11 14:56:58 -08:00
Marcel Holtmann e51e1243e3 sierra: Add skeleton for Sierra modem plugin 2011-01-10 23:16:21 -08:00
Marcel Holtmann 1cf3b640fe udev: Add support for Sierra device detection 2011-01-10 23:12:12 -08:00
Lucas De Marchi 4c2920d8a5 huawei: use VENDOR_HUAWEI quirk on sim creation 2011-01-10 15:38:42 -06:00
Denis Kenzior 58b053c881 udev: Minor style fix 2011-01-10 15:14:03 -06:00
Oskari Timperi 83ab76d475 udev: Handle TC65 modem 2011-01-10 15:11:48 -06:00
Denis Kenzior 98e5619aad tc65: Minor style fixes 2011-01-10 15:11:18 -06:00
Denis Kenzior 1e8d948e20 tc65: Simplify logic 2011-01-10 15:10:40 -06:00
Denis Kenzior 51427d8516 tc65: No need to g_strdup options in the hashtable 2011-01-10 15:08:01 -06:00
Oskari Timperi e6d8b537b9 Add plugin for Cinterion TC65 modem 2011-01-10 15:00:50 -06:00
Marcel Holtmann 845a69158f gobi: Add support for basic network registration handling 2011-01-09 19:02:35 -08:00
Marcel Holtmann 994e6da575 gobi: Add skeleton for Qualcomm Gobi modem plugin 2011-01-09 06:18:18 -08:00
Marcel Holtmann c21aa148f8 udev: Add support for Qualcomm Gobi device detection 2011-01-09 06:17:26 -08:00
Pekka Pessi 524c5813d2 n900: use simplified client interface
Use MTC_STATE_REQ_TIMEOUT with MTC_STATE_REQ, too.
2011-01-07 13:39:18 +02:00
Pekka Pessi e1b6a5f16d isiusb: use simplified client interface 2011-01-07 13:39:18 +02:00
Marcel Holtmann b3fda06e2d hso: Add support for checking SIM ready status 2011-01-05 23:02:48 -08:00
Marcel Holtmann dbbc6be716 hso: Add support for model type check on bootup 2011-01-05 22:33:07 -08:00
Marcel Holtmann 9c5fdc9065 mbm: Fix check for modem model 2011-01-05 22:28:19 -08:00
Marcel Holtmann 3950052dfc push-notification: Handle notifications with source port 0
It seesm that some networks send the push notifications with a source
port of 0 instead of 9200. Instead of accepting any source port, add
an additional datagram handler for the source port 0.
2010-12-24 10:48:30 -08:00
Andrzej Zaborowski 369fe6b146 n900: remove unneeded g_isi_client_destroy call
"client" is either NULL or uninitialised in this place.
2010-12-23 18:25:40 -06:00
Aki Niemi 204aaeced0 isigen: Rename generic USB plugin to isiusb 2010-12-22 17:13:49 +02:00
Aki Niemi 4e91ea67d2 n900: Enable message tracing and debugging 2010-12-22 17:13:49 +02:00
Aki Niemi 64e712f3a6 n900: Adapt and refactor n900 plugin 2010-12-22 17:13:49 +02:00
Aki Niemi b2bf42f254 isigen: Enable message tracing and debugging 2010-12-22 17:13:49 +02:00
Aki Niemi 2cef1587f2 isigen: Adapt and refactor isigen plugin 2010-12-22 17:13:48 +02:00
Lucas De Marchi d90fd381b5 huawei: cancel poll when going to a valid state 2010-12-21 17:21:21 -06:00
Denis Kenzior 9e9cc02025 ste: Move radio_settings to post_sim 2010-12-21 16:36:42 -06:00
Denis Kenzior e2c3c05730 novatel: Move radio_settings to post_sim 2010-12-21 16:36:19 -06:00
Denis Kenzior 784bf9b1c3 n900: Move radio_settings to post_sim 2010-12-21 16:31:58 -06:00
Denis Kenzior 398e2b681b isigen: Move radio_settings to post_sim 2010-12-21 16:31:36 -06:00
Denis Kenzior 9e4c1a64cf ifx: Move radio_settings to post_sim 2010-12-21 16:31:14 -06:00
Denis Kenzior b22d2109da huawei: Move radio_settings to post_sim 2010-12-21 16:31:11 -06:00
Denis Kenzior 87dcc536ea hso: Move radio_settings to post_sim 2010-12-21 16:28:36 -06:00
Lucas De Marchi 5212a1b5a4 huawei: Add support for radio settings 2010-12-21 16:03:00 -06:00
Lucas De Marchi 67486801d0 huawei: fix SIM state notification when locked
When SIM is locked, huawei modem does not send any notification about
SIM state change because it does not differentiate 'invalid' from
'locked'.

In order to be able to unlock the sim, this patch forces a notification
of a valid state after a timeout.
2010-12-21 13:37:25 -06:00
Antti Paila 53bede6385 udev: Fix warning in compilation 2010-12-21 06:05:21 -08:00
Neil Jerram 29561dba93 udev: Handle calypso driver 2010-12-20 17:34:06 -06:00
M. Dietrich bb58a72907 huawei: set huawei em770 modem device to 01
device 00 is ppp capable while 01 is not. 01 does everything
else fine so ofono works with it flawlessly.
2010-12-20 15:25:01 -06:00
Jeevaka Badrappan 9f61b81965 phonesim: Move call forwarding to post sim 2010-12-17 17:04:04 -06:00
Jeevaka Badrappan c56c0b03bd plugins/n900: Move call forwarding to post sim 2010-12-17 17:04:01 -06:00
Jeevaka Badrappan ddb2baaa54 isigen: Move call forwarding to post sim 2010-12-17 17:03:58 -06:00
Jeevaka Badrappan e3358cc24b ifx: Move call forwarding to post sim 2010-12-17 17:03:55 -06:00
Denis Kenzior 0571baa5f1 huawei: Pass the HUAWEI vendor ID to gprs driver 2010-12-11 11:39:07 -06:00
Gustavo F. Padovan b7cfbff47d phonesim: Add modem reset trigger 2010-12-07 12:16:20 -06:00
Denis Kenzior 4c2bd38f7f ste: Minor style fixes 2010-12-03 08:01:10 -06:00
Helen Clemson 6befb8290d ste: Restructure caif channel creation
This is restructuring the caif channel creation, so that at a later
date multiple AT channels can be supported. This effectively moves
the channel creation from ste_enable, into its own function,
ste_create_channel.
2010-12-03 08:01:10 -06:00
Lucas De Marchi 67f78f680d plugins: explicitly compare pointers to NULL
This patch was generated by the following semantic patch
(http://coccinelle.lip6.fr/)

// <smpl>
@fix disable is_null,isnt_null1@
expression *E;
@@

- !E
+ E == NULL
// </smpl>
2010-11-29 12:55:49 -06:00
Lucas De Marchi 62781988e2 phonesim: implement ctm atom 2010-11-29 10:38:58 -06:00
Rémi Denis-Courmont 1578c0e2f4 isigen: Remove stray newlines in DBG 2010-11-26 13:49:32 -06:00
Mika Liljeberg 39d6fffae8 isigen: create four gprs contexts 2010-11-11 09:52:34 -06:00
Pekka Pessi 179a81ac7c udev: do not use weird serial with zte 2010-11-08 13:12:09 -06:00
Pekka Pessi fbacb9de28 zte: use AT+CFUN=1;+CFUN=4 in enable
Direct +CFUN transition 0 -> 4 gets SIM in inconsistent state.
2010-11-08 11:50:07 -06:00
Torgny Johansson aa3122fcbc Add vid/pid for Ericsson F5521gw 2010-11-08 19:37:38 +09:00
Hannu Lyytinen aa792453ae Added Nokia CS-17 to udev rules.
The stick has to be initialized with usb_modeswitch, though.
2010-11-07 12:45:49 +01:00
Hannu Lyytinen 2cf6a4819f Fixes segfault when removing Nokia Datacard. 2010-11-07 12:45:39 +01:00
Denis Kenzior 473cd4a7c6 smart-messaging: Implement SendAppointment 2010-11-04 10:25:42 -05:00
Denis Kenzior 7ecff9f83b smart-messaging: Implement SendBusinessCard 2010-11-04 10:25:42 -05:00
Pekka Pessi b3495d3a9b isigen: increase offline timeout
The modem deregisters from network before response to MTC_STATE_REQ is
returned.  Deregistering can take up to 6 seconds.
2010-11-04 16:19:53 +01:00
Marcel Holtmann ce7b1e2e67 build: Remove generic AT command modem plugin
This plugin was used for initial testing and is no longer needed. So
just remove it.
2010-11-04 15:20:38 +01:00
Denis Kenzior 59bbdd5d08 smart-messaging: Register to vCal notifications 2010-11-02 14:58:21 -05:00
Denis Kenzior 429dcb6ef5 smart-messaging: Register for vCard notifications 2010-11-02 14:58:21 -05:00
Denis Kenzior 6e6409ff42 smart-messaging: Free agent when sms atom exits 2010-11-02 14:58:21 -05:00
Denis Kenzior 49eee4006a smart-messaging: Implement unregister agent 2010-11-02 14:58:21 -05:00
Denis Kenzior d56e72ee1d smart-messaging: Implement RegisterAgent 2010-11-02 14:58:21 -05:00
Denis Kenzior 0d80076c79 push-notification: Handle WAP push messages 2010-11-02 12:15:53 -05:00
Denis Kenzior f9066be4f0 push-notification: Free agent when sms atom exits 2010-11-02 12:15:53 -05:00
Denis Kenzior 853f449892 push-notification: Implement unregister agent 2010-11-02 12:15:53 -05:00
Denis Kenzior df5339bf89 push-notification: Implement register agent 2010-11-02 12:15:53 -05:00
Denis Kenzior 55a61c3a63 push-notification: Add skeleton 2010-11-02 12:15:53 -05:00
Mika Liljeberg 6f94ed0685 isigen: fix phonet address initialization 2010-11-01 17:27:33 +01:00
Marcel Holtmann f6c3a9ae94 ifx: Enable vendor quirk for GPRS atom
Enabling the Infineon specific vendor quirk for the GPRS atom will enable
support for the GPRS suspend notifications.
2010-10-29 13:42:34 +02:00
Marcel Holtmann 6c52b1ff63 mbm: Fix setting GPRS context type for wrong atom 2010-10-27 11:53:13 +02:00
Marcel Holtmann 0b66264f8b mbm: Set specific GPRS context type for different atoms 2010-10-27 11:37:17 +02:00
Marcel Holtmann 23f2706dd0 mbm: Handle TTY disconnect for PPP based GPRS context
The Ericsson MBM modems also hangup the TTY when disconnecting PPP and
in that case the TTY needs to be re-opened. In addition it seems that
the TTY is actually blocked until the context is fully brought down, so
also a delay is required.
2010-10-27 02:02:41 +02:00
Marcel Holtmann 10ee140c24 mbm: Use the variant specific enum in a cleaner way 2010-10-27 01:18:42 +02:00
Marcel Holtmann 1e0602a9a8 mbm: Use data port for second PPP based GPRS context 2010-10-27 01:17:10 +02:00
Marcel Holtmann 305514ced9 ifx: Add support for having three active GPRS contexts
The Infineon modem can at least support three active GPRS contexts in
M-RAW_IP mode. So use another DLC for the third context.
2010-10-26 17:05:23 +02:00
Marcel Holtmann 74c23d3302 ifx: Use M-RAW_IP support only with internal multiplexer
The GPRS context can only be fully supported with the internal multiplexer
right now. So use M-RAW_IP support in that case. If using a kernel based
multiplexer, then no GPRS context is provided.
2010-10-26 17:00:52 +02:00
Marcel Holtmann 4acf7cfbea phonesim: Fix missing return from plugin init 2010-10-25 23:14:05 +02:00
Marcel Holtmann ef4d2fb322 phonesim: Register modem driver before creating modems 2010-10-25 22:33:18 +02:00
Denis Kenzior de3c0d6247 phonesim: Support multiple contexts 2010-10-25 14:45:12 -05:00
Denis Kenzior eb0557ff9b phonesim: Enable dummy phonesim contexts 2010-10-25 14:45:12 -05:00
Marcel Holtmann f8ef39c96e build: Add example configuration for phonesim plugin 2010-10-25 20:48:55 +02:00
Marcel Holtmann 7738f94451 build: Remove modemconf plugin support 2010-10-25 20:43:05 +02:00
Marcel Holtmann 7c2529077c phonesim: Don't use modem.conf for phonesim modems 2010-10-25 20:12:32 +02:00
Marcel Holtmann 2c863506d3 ifx: Detect when DLC shutdown happens
In case one of the DLCs shuts down, the system has an undefined state
and thus just shutdown the whole device.
2010-10-24 20:15:45 +02:00
Marcel Holtmann 4a5f37dafd ifx: Detect modems stuck in multiplexer mode
When the initial AT commands on the master device don't respond, then
the modem is stuck in multiplexer mode. For now just report an error.
2010-10-24 20:00:32 +02:00
Marcel Holtmann e4b09b3012 ifx: Use PPP based GPRS context if M-RAW_IP is not available 2010-10-23 12:57:42 +02:00
Marcel Holtmann 2c06348356 ifx: Add two GPRS contexts since the modem should support it 2010-10-21 23:51:36 +02:00
Marcel Holtmann f6b92bd2d9 ifx: Use Infineon specific GPRS context driver 2010-10-21 21:54:04 +02:00
Marcel Holtmann cca0782029 ifx: Use Infineon specific phonebook vendor quirk 2010-10-21 20:32:18 +02:00
Marcel Holtmann e74723776a ifx: Assign GPRS DLCs as slaves of the network DLC 2010-10-21 18:51:38 +02:00
Marcel Holtmann 2475d8826c ifx: Wait for DLC creation to settle (internal multiplexer)
When driving the Infineon modem with the builtin multiplexer there is
a small race condition with setting up the channels and sending the
first AT commands. The window here is pretty small, but it seems to be
a modem firmware issue. In case the AT command is send right away it can
happen that the modem does not process any further AT commands. In that
case the setup is stuck and enabling the modem fails.

Just adding a 10 milliseconds delay after DLC creation and before
sending the first AT commands is enough to make this work smoothly.
2010-10-19 22:59:21 +02:00
Marcel Holtmann 93f7bca25f phonesim: Add missing ATE0 when in multiplexer mode 2010-10-19 20:42:29 +02:00
Marcel Holtmann 96c04a744b phonesim: Fix multiplexer setup handling and modem power 2010-10-19 18:50:52 +02:00
Marcel Holtmann 56480ba582 ifx: Separate AT command from multiplexer debug setting 2010-10-17 14:50:45 +02:00
Denis Kenzior c1eb40e979 phonesim: minor whitespace fix 2010-10-14 01:07:44 -05:00
Torgny Johansson 5085e299fd ofono.rules: Add additional MBM rules
Add Ericsson c3607w and HP f3607gw/f3307 devices to udev rules file
2010-10-13 08:53:39 -05:00
Denis Kenzior a6909a227f huawei: Fixup whitespace corruption 2010-10-13 05:04:46 -05:00
Marcel Holtmann 9bc187bd45 ifx: Disable modem UART for power saving
Send AT+XPOW=0,0,0 command when enabling modem to disable UART. This
is done for power saving.
2010-10-13 08:42:45 +03:00
Aki Niemi 9914b2059e Fix smart messaging D-Bus signatures 2010-10-11 16:00:54 +03:00
Aki Niemi 061f61398d isigen: Add dummy ops for enable/disable
Without these the core gets confused. These are actually no-ops, since
enabling and disabling aren't supported with a USB modem.
2010-10-11 15:43:24 +03:00
Pekka Pessi f0ba01543a udev: refactor add_isi
Gather OFONO_ISI_ADDRESS from same udev device node as OFONO_DRIVER.
2010-10-07 15:30:04 +03:00
Pekka Pessi f8f93c34a8 udev: do not use post-143 libudev features
There is no udev_device_get_property_value() in libudev version 143.
2010-10-07 15:30:01 +03:00
Marcel Holtmann 5101702583 huawei: Use modem interface only if NDIS support is not available 2010-10-05 16:50:09 +02:00
Marcel Holtmann acc1f1d6af huawei: Add support for enabling NDIS GPRS driver if supported 2010-10-05 16:38:23 +02:00
Marcel Holtmann 45a2077e67 udev: Track NDIS port of Huawei devices (if present) 2010-10-05 16:21:19 +02:00
Marcel Holtmann 29e09bf3b9 udev: Fix coding style 2010-10-01 16:44:26 +02:00
Pekka Pessi 951cf0eaef udev: Fix ISI address setting 2010-10-01 17:38:40 +03:00
Kai Vehmanen 618ac2516c n900: Enable audio settings atom 2010-10-01 17:11:25 +03:00
Marcel Holtmann 7a77b292e3 ifx: Remove support for OFONO_IFX_MODEL option
The Infineon modem model is now auto-detected, so there is no longer
any need to specify it in the udev configuration rules.
2010-10-01 15:18:06 +02:00
Marcel Holtmann 0aae76c7aa ifx: Enable audio settings atom support 2010-10-01 13:17:24 +02:00
Marcel Holtmann 004219660f udev: Include "hsi" in the subsystems to watch 2010-10-01 13:01:08 +02:00
Aki Niemi e8d88d48da n900: Fix link target status 2010-10-01 13:55:02 +03:00
Marcel Holtmann 31d3142256 ifx: Fix crash with XGENDATA result callback 2010-10-01 12:31:19 +02:00
Marcel Holtmann e9e901a5ee build: Remove no longer needed plugins/usbpnmodem.c 2010-10-01 09:27:44 +02:00
Marcel Holtmann 6ce4f46273 build: Rename smart_messaging.c to smart-messaging.c 2010-10-01 07:51:43 +02:00
Marcel Holtmann 88f1b3c85e build: Move example plugins to its own directory 2010-10-01 07:44:09 +02:00
Marcel Holtmann a73dd11a87 udev: Some minor coding style updates 2010-10-01 06:57:22 +02:00
Marcel Holtmann be99e80a24 isi: Remove not needed includes for oFono headers 2010-10-01 06:54:27 +02:00
Marcel Holtmann 0ff1a3cb79 isi: Private header files don't need circular inclusion protection 2010-10-01 06:52:38 +02:00
Marcel Holtmann 26210912d9 plugins: Mode fixups for copyrigh headers 2010-10-01 06:51:34 +02:00
Marcel Holtmann b246df78f1 isi: Fix up the copyright headers of modem plugins
It is important that the copyright headers are consistent throughout
the source code. While the copyright might be owned by different
people of companies, the header itself with its license information
should be identical.
2010-10-01 06:46:32 +02:00
Marcel Holtmann 7dbdf46215 ifx: Use XGENDATA for modem model detection
The XGENDATA result contains various strings that also contain the modem
model. Make this command mandatory for the modem bringup and after it
succeeded, check for the XMM6260 string to setup specific audio settings.

This makes using ENV{OFONO_IFX_MODEL}="XMM6260" obsolete, but for now it
is still left as a possible option. It might be removed later.
2010-10-01 06:38:02 +02:00
Aki Niemi 99afae0393 smart_messaging: Remove interface on atom removal 2010-09-30 19:07:51 -05:00
Aki Niemi a7879d4e0c gisi: Remove route adding API 2010-09-30 11:25:48 +03:00
Aki Niemi f6966a3c5e Add udev support for ISI modems 2010-09-30 11:25:48 +03:00
Pekka Pessi 43e9d09a1c modemconf: set up isigen and n900
Allows basic configuration of phonet links.
2010-09-30 11:25:47 +03:00
Pekka Pessi 82894cf58f n900: modem driver plugin for Nokia N900
This patch adds a modem driver plugin for the Nokia N900 internal
modem. It controls the modem using the appropriate GPIO lines and thus
works without the Maemo userspace.

This plugin can run natively on the N900 with either Maemo or Meego
kernels. However, it conflicts with the Maemo userspace, for which
isigen should be used instead.
2010-09-30 11:25:47 +03:00
Pekka Pessi 0fc18e8176 isigen: generic modem driver plugin for ISI
The new isigen modem driver plugin replaces the generic parts in the
isimodem modem driver. This plugin works with recent Nokia modems in
PC suite mode over USB, as well as with the N900 modem using Maemo5
userspace.
2010-09-30 11:25:47 +03:00
Marcel Holtmann 190be6348c huawei: Add support for specific audio settings 2010-09-30 00:01:14 +09:00
Marcel Holtmann 461ef8ad97 huawei: Remove pointless vendor quirk 2010-09-29 23:59:50 +09:00