summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDenis Kenzior <denis.kenzior@intel.com>2009-09-01 17:32:07 -0500
committerDenis Kenzior <denkenz@gmail.com>2009-09-01 18:14:58 -0500
commit1fb9ecca468a56e237047db01193582c6c7fb889 (patch)
treee09967ceca15b75db03b6945871d33bde0f22dd6
parent271b0424888d2c0d4488231bfaa8e3f8ab7bc782 (diff)
downloadofono-1fb9ecca468a56e237047db01193582c6c7fb889.tar.bz2
Add vendor flag capability to phonebook
-rw-r--r--drivers/atmodem/phonebook.c5
-rw-r--r--drivers/isimodem/isimodem.c2
-rw-r--r--drivers/isimodem/phonebook.c5
-rw-r--r--include/phonebook.h3
-rw-r--r--plugins/generic_at.c2
-rw-r--r--src/phonebook.c4
6 files changed, 12 insertions, 9 deletions
diff --git a/drivers/atmodem/phonebook.c b/drivers/atmodem/phonebook.c
index fd50a3c2..f4d3ef1a 100644
--- a/drivers/atmodem/phonebook.c
+++ b/drivers/atmodem/phonebook.c
@@ -518,9 +518,10 @@ static void at_list_charsets(struct ofono_phonebook *pb)
phonebook_not_supported(pb);
}
-static int at_phonebook_probe(struct ofono_phonebook *pb)
+static int at_phonebook_probe(struct ofono_phonebook *pb, int vendor,
+ void *data)
{
- GAtChat *chat = ofono_phonebook_get_data(pb);
+ GAtChat *chat = data;
struct pb_data *pbd;
pbd = g_new0(struct pb_data, 1);
diff --git a/drivers/isimodem/isimodem.c b/drivers/isimodem/isimodem.c
index f8cde0c5..016b17ce 100644
--- a/drivers/isimodem/isimodem.c
+++ b/drivers/isimodem/isimodem.c
@@ -150,7 +150,7 @@ static int isi_modem_populate(struct ofono_modem *modem)
struct isi_data *isi = ofono_modem_get_data(modem);
ofono_devinfo_create(isi->modem, 0, "isi", isi->idx);
- ofono_phonebook_create(isi->modem, "isi", isi->idx);
+ ofono_phonebook_create(isi->modem, 0, "isi", isi->idx);
ofono_netreg_create(isi->modem, 0, "isi", isi->idx);
ofono_voicecall_create(isi->modem, "isi", isi->idx);
ofono_sms_create(isi->modem, "isi", isi->idx);
diff --git a/drivers/isimodem/phonebook.c b/drivers/isimodem/phonebook.c
index 7c544741..f683638c 100644
--- a/drivers/isimodem/phonebook.c
+++ b/drivers/isimodem/phonebook.c
@@ -376,9 +376,10 @@ static gboolean isi_phonebook_register(gpointer user)
return FALSE;
}
-static int isi_phonebook_probe(struct ofono_phonebook *pb)
+static int isi_phonebook_probe(struct ofono_phonebook *pb, int vendor,
+ void *user)
{
- GIsiModem *idx = ofono_phonebook_get_data(pb);
+ GIsiModem *idx = user;
struct pb_data *data = g_try_new0(struct pb_data, 1);
if (!data)
diff --git a/include/phonebook.h b/include/phonebook.h
index a04747de..1fc154d2 100644
--- a/include/phonebook.h
+++ b/include/phonebook.h
@@ -38,7 +38,7 @@ typedef void (*ofono_phonebook_cb_t)(const struct ofono_error *error,
*/
struct ofono_phonebook_driver {
const char *name;
- int (*probe)(struct ofono_phonebook *pb);
+ int (*probe)(struct ofono_phonebook *pb, int vendor, void *data);
int (*remove)(struct ofono_phonebook *pb);
void (*export_entries)(struct ofono_phonebook *pb, const char *storage,
ofono_phonebook_cb_t cb, void *data);
@@ -56,6 +56,7 @@ int ofono_phonebook_driver_register(const struct ofono_phonebook_driver *d);
void ofono_phonebook_driver_unregister(const struct ofono_phonebook_driver *d);
struct ofono_phonebook *ofono_phonebook_create(struct ofono_modem *modem,
+ int vendor,
const char *driver,
void *data);
diff --git a/plugins/generic_at.c b/plugins/generic_at.c
index 4d7b3007..e69717af 100644
--- a/plugins/generic_at.c
+++ b/plugins/generic_at.c
@@ -520,7 +520,7 @@ static int generic_at_populate(struct ofono_modem *modem)
ofono_call_barring_create(modem, 0, "generic_at", chat);
ofono_ssn_create(modem, "generic_at", chat);
ofono_sms_create(modem, "generic_at", chat);
- ofono_phonebook_create(modem, "generic_at", chat);
+ ofono_phonebook_create(modem, 0, "generic_at", chat);
mw = ofono_message_waiting_create(modem);
if (mw)
diff --git a/src/phonebook.c b/src/phonebook.c
index 0dfd2819..eb9e63f8 100644
--- a/src/phonebook.c
+++ b/src/phonebook.c
@@ -537,6 +537,7 @@ static void phonebook_remove(struct ofono_atom *atom)
}
struct ofono_phonebook *ofono_phonebook_create(struct ofono_modem *modem,
+ int vendor,
const char *driver, void *data)
{
struct ofono_phonebook *pb;
@@ -551,7 +552,6 @@ struct ofono_phonebook *ofono_phonebook_create(struct ofono_modem *modem,
return NULL;
pb->vcards = g_string_new(NULL);
- pb->driver_data = data;
pb->atom = __ofono_modem_add_atom(modem, OFONO_ATOM_TYPE_PHONEBOOK,
phonebook_remove, pb);
@@ -561,7 +561,7 @@ struct ofono_phonebook *ofono_phonebook_create(struct ofono_modem *modem,
if (g_strcmp0(drv->name, driver))
continue;
- if (drv->probe(pb) < 0)
+ if (drv->probe(pb, vendor, data) < 0)
continue;
pb->driver = drv;