From 0f24601c553f3183a0843b50f6f271fd0eee174f Mon Sep 17 00:00:00 2001 From: Alexandru Ardelean Date: Sat, 11 Feb 2023 20:11:04 +0200 Subject: plugins: quectel: re-organize code for ussd & lte init The BG95 modem (family) supports LTE, but not USSD. So, we'll split the init of the LTE separately, and add a helper function (called quectel_model_supports_lte()) which will return true if the modem supports LTE. --- plugins/quectel.c | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/plugins/quectel.c b/plugins/quectel.c index f933723d..464845ff 100644 --- a/plugins/quectel.c +++ b/plugins/quectel.c @@ -128,6 +128,17 @@ enum quectel_power_event { static const char dbus_hw_interface[] = OFONO_SERVICE ".quectel.Hardware"; +static ofono_bool_t quectel_model_supports_lte(enum quectel_model model) +{ + switch (model) { + case QUECTEL_EC21: + case QUECTEL_EC200: + return TRUE; + default: + return FALSE; + } +} + static ofono_bool_t has_serial_connection(struct ofono_modem *modem) { @@ -1356,10 +1367,11 @@ static void quectel_post_sim(struct ofono_modem *modem) ofono_phonebook_create(modem, data->vendor, "atmodem", data->aux); ofono_call_volume_create(modem, data->vendor, "atmodem", data->aux); - if (data->model == QUECTEL_EC21 || data->model == QUECTEL_EC200) { + if (data->model == QUECTEL_EC21 || data->model == QUECTEL_EC200) ofono_ussd_create(modem, data->vendor, "atmodem", data->aux); + + if (quectel_model_supports_lte(data->model)) ofono_lte_create(modem, data->vendor, "atmodem", data->aux); - } } static void quectel_post_online(struct ofono_modem *modem) -- cgit v1.2.1