summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSergey Matyukevich <geomatsi@gmail.com>2020-08-18 23:43:47 +0300
committerDenis Kenzior <denkenz@gmail.com>2020-08-19 09:50:44 -0500
commit23c78bd316651e35d3bcc9120581a7ad1895c3f5 (patch)
tree75627bde5aadc482ef30ba62481c3e02fbe87e59
parent71ceaf93fd652c6ec0b7238394bbe2e40042085c (diff)
downloadofono-23c78bd316651e35d3bcc9120581a7ad1895c3f5.tar.gz
plugins: gemalto: alternative gprs-context driver
Use alternative gprs context driver for gemalto modems that provide USB ethernet interfaces for data path.
-rw-r--r--plugins/gemalto.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/plugins/gemalto.c b/plugins/gemalto.c
index 13950742..238c7cc4 100644
--- a/plugins/gemalto.c
+++ b/plugins/gemalto.c
@@ -588,6 +588,8 @@ static void gemalto_post_sim(struct ofono_modem *modem)
struct ofono_gprs *gprs;
struct ofono_gprs_context *gc;
const char *model = ofono_modem_get_string(modem, "Model");
+ const char *driver = NULL;
+ const char *iface = NULL;
DBG("%p", modem);
@@ -596,7 +598,15 @@ static void gemalto_post_sim(struct ofono_modem *modem)
ofono_sms_create(modem, OFONO_VENDOR_GEMALTO, "atmodem", data->app);
gprs = ofono_gprs_create(modem, 0, "atmodem", data->app);
- gc = ofono_gprs_context_create(modem, 0, "atmodem", data->mdm);
+
+ iface = ofono_modem_get_string(modem, "NetworkInterface");
+ if (iface) {
+ driver = "gemaltomodem";
+ } else {
+ driver = "atmodem";
+ }
+
+ gc = ofono_gprs_context_create(modem, 0, driver, data->mdm);
if (gprs && gc)
ofono_gprs_add_context(gprs, gc);