mirror of git://git.sysmocom.de/ofono
Add a vendor OFONO_VENDOR_QUECTEL_EC2X
The distinction between OFONO_VENDOR_QUECTEL and OFONO_VENDOR_QUECTEL_SERIAL does not suffice for EC21/EC25 in some places, so introduce and use a new vendor: OFONO_VENDOR_QUECTEL_EC2X
This commit is contained in:
parent
446a5ae394
commit
3401d9e29c
|
@ -1213,6 +1213,7 @@ static void at_pin_retries_query(struct ofono_sim *sim,
|
||||||
return;
|
return;
|
||||||
break;
|
break;
|
||||||
case OFONO_VENDOR_QUECTEL:
|
case OFONO_VENDOR_QUECTEL:
|
||||||
|
case OFONO_VENDOR_QUECTEL_EC2X:
|
||||||
if (g_at_chat_send(sd->chat, "AT+QPINC?", qpinc_prefix,
|
if (g_at_chat_send(sd->chat, "AT+QPINC?", qpinc_prefix,
|
||||||
at_qpinc_cb, cbd, g_free) > 0)
|
at_qpinc_cb, cbd, g_free) > 0)
|
||||||
return;
|
return;
|
||||||
|
|
|
@ -337,6 +337,7 @@ static inline void at_ack_delivery(struct ofono_sms *sms)
|
||||||
if (data->cnma_ack_pdu) {
|
if (data->cnma_ack_pdu) {
|
||||||
switch (data->vendor) {
|
switch (data->vendor) {
|
||||||
case OFONO_VENDOR_GEMALTO:
|
case OFONO_VENDOR_GEMALTO:
|
||||||
|
case OFONO_VENDOR_QUECTEL_EC2X:
|
||||||
snprintf(buf, sizeof(buf), "AT+CNMA=1");
|
snprintf(buf, sizeof(buf), "AT+CNMA=1");
|
||||||
break;
|
break;
|
||||||
case OFONO_VENDOR_QUECTEL_SERIAL:
|
case OFONO_VENDOR_QUECTEL_SERIAL:
|
||||||
|
@ -845,6 +846,7 @@ static gboolean build_cnmi_string(char *buf, int *cnmi_opts,
|
||||||
case OFONO_VENDOR_ZTE:
|
case OFONO_VENDOR_ZTE:
|
||||||
case OFONO_VENDOR_SIMCOM:
|
case OFONO_VENDOR_SIMCOM:
|
||||||
case OFONO_VENDOR_QUECTEL:
|
case OFONO_VENDOR_QUECTEL:
|
||||||
|
case OFONO_VENDOR_QUECTEL_EC2X:
|
||||||
/* MSM devices advertise support for mode 2, but return an
|
/* MSM devices advertise support for mode 2, but return an
|
||||||
* error if we attempt to actually use it. */
|
* error if we attempt to actually use it. */
|
||||||
mode = "1";
|
mode = "1";
|
||||||
|
|
|
@ -44,6 +44,7 @@ enum ofono_vendor {
|
||||||
OFONO_VENDOR_WAVECOM_Q2XXX,
|
OFONO_VENDOR_WAVECOM_Q2XXX,
|
||||||
OFONO_VENDOR_ALCATEL,
|
OFONO_VENDOR_ALCATEL,
|
||||||
OFONO_VENDOR_QUECTEL,
|
OFONO_VENDOR_QUECTEL,
|
||||||
|
OFONO_VENDOR_QUECTEL_EC2X,
|
||||||
OFONO_VENDOR_QUECTEL_SERIAL,
|
OFONO_VENDOR_QUECTEL_SERIAL,
|
||||||
OFONO_VENDOR_UBLOX,
|
OFONO_VENDOR_UBLOX,
|
||||||
OFONO_VENDOR_XMM,
|
OFONO_VENDOR_XMM,
|
||||||
|
|
|
@ -1114,7 +1114,8 @@ static int at_voicecall_probe(struct ofono_voicecall *vc, unsigned int vendor,
|
||||||
g_at_chat_send(vd->chat, "AT+CLIP=1", NULL, NULL, NULL, NULL);
|
g_at_chat_send(vd->chat, "AT+CLIP=1", NULL, NULL, NULL, NULL);
|
||||||
g_at_chat_send(vd->chat, "AT+CDIP=1", NULL, NULL, NULL, NULL);
|
g_at_chat_send(vd->chat, "AT+CDIP=1", NULL, NULL, NULL, NULL);
|
||||||
|
|
||||||
if (vd->vendor != OFONO_VENDOR_QUECTEL)
|
if (vd->vendor != OFONO_VENDOR_QUECTEL &&
|
||||||
|
vd->vendor != OFONO_VENDOR_QUECTEL_EC2X)
|
||||||
g_at_chat_send(vd->chat, "AT+CNAP=1", NULL, NULL, NULL, NULL);
|
g_at_chat_send(vd->chat, "AT+CNAP=1", NULL, NULL, NULL, NULL);
|
||||||
|
|
||||||
switch (vd->vendor) {
|
switch (vd->vendor) {
|
||||||
|
|
|
@ -1032,7 +1032,7 @@ static void cgmm_cb(int ok, GAtResult *result, void *user_data)
|
||||||
data->model = QUECTEL_MC60;
|
data->model = QUECTEL_MC60;
|
||||||
} else if (strcmp(model, "EC21") == 0) {
|
} else if (strcmp(model, "EC21") == 0) {
|
||||||
DBG("%p model EC21", modem);
|
DBG("%p model EC21", modem);
|
||||||
data->vendor = OFONO_VENDOR_QUECTEL;
|
data->vendor = OFONO_VENDOR_QUECTEL_EC2X;
|
||||||
data->model = QUECTEL_EC21;
|
data->model = QUECTEL_EC21;
|
||||||
} else {
|
} else {
|
||||||
ofono_warn("%p unknown model: '%s'", modem, model);
|
ofono_warn("%p unknown model: '%s'", modem, model);
|
||||||
|
|
Loading…
Reference in New Issue