summaryrefslogtreecommitdiffstats
path: root/drivers/atmodem
diff options
context:
space:
mode:
authorMarcel Holtmann <marcel@holtmann.org>2010-06-13 08:10:13 +0200
committerMarcel Holtmann <marcel@holtmann.org>2010-06-13 08:10:13 +0200
commit66c50b6a72bee8a56e6a5577874c197ff35b538e (patch)
tree7bd59b7523745acc83c3e6673d549b7b906aac58 /drivers/atmodem
parent6a26431f585fe569ec830868f28d8da0f2d43705 (diff)
downloadofono-66c50b6a72bee8a56e6a5577874c197ff35b538e.tar.bz2
Add nasty quirk to allow HSO devices to read network code length
The AT+CRSM=192 commands are failing on HSO devices and thus it might be needed to return its details from a predefined database. Start with testing this for reading the network code length.
Diffstat (limited to 'drivers/atmodem')
-rw-r--r--drivers/atmodem/sim.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/drivers/atmodem/sim.c b/drivers/atmodem/sim.c
index 32c40a5c..766c60b1 100644
--- a/drivers/atmodem/sim.c
+++ b/drivers/atmodem/sim.c
@@ -110,6 +110,15 @@ static void at_sim_read_info(struct ofono_sim *sim, int fileid,
struct cb_data *cbd = cb_data_new(cb, data);
char buf[64];
+ if (sd->vendor == OFONO_VENDOR_OPTION_HSO) {
+ unsigned char access[3] = { 0x00, 0x00, 0x00 };
+
+ if (fileid == SIM_EFAD_FILEID) {
+ CALLBACK_WITH_SUCCESS(cb, 4, 0, 0, access, data);
+ return;
+ }
+ }
+
if (!cbd)
goto error;