mirror of git://git.sysmocom.de/ofono
mbim: Set the subscribe list
Some devices don't seem to enable incoming SMS notifications. So set the notifications we're interested in at modem startup.
This commit is contained in:
parent
8bf5a3e353
commit
8b98126da5
|
@ -155,6 +155,28 @@ error:
|
|||
mbim_device_shutdown(md->device);
|
||||
}
|
||||
|
||||
static void mbim_device_subscribe_list_set_cb(struct mbim_message *message,
|
||||
void *user)
|
||||
{
|
||||
struct ofono_modem *modem = user;
|
||||
struct mbim_data *md = ofono_modem_get_data(modem);
|
||||
|
||||
if (mbim_message_get_error(message) != 0)
|
||||
goto error;
|
||||
|
||||
message = mbim_message_new(mbim_uuid_basic_connect,
|
||||
MBIM_CID_RADIO_STATE,
|
||||
MBIM_COMMAND_TYPE_SET);
|
||||
|
||||
mbim_message_set_arguments(message, "u", 0);
|
||||
if (mbim_device_send(md->device, 0, message,
|
||||
mbim_radio_state_init_cb, modem, NULL))
|
||||
return;
|
||||
|
||||
error:
|
||||
mbim_device_shutdown(md->device);
|
||||
}
|
||||
|
||||
static void mbim_device_caps_info_cb(struct mbim_message *message, void *user)
|
||||
{
|
||||
struct ofono_modem *modem = user;
|
||||
|
@ -198,13 +220,27 @@ static void mbim_device_caps_info_cb(struct mbim_message *message, void *user)
|
|||
l_free(hardware_info);
|
||||
|
||||
message = mbim_message_new(mbim_uuid_basic_connect,
|
||||
MBIM_CID_RADIO_STATE,
|
||||
MBIM_CID_DEVICE_SERVICE_SUBSCRIBE_LIST,
|
||||
MBIM_COMMAND_TYPE_SET);
|
||||
|
||||
mbim_message_set_arguments(message, "u", 0);
|
||||
mbim_device_send(md->device, 0, message,
|
||||
mbim_radio_state_init_cb, modem, NULL);
|
||||
return;
|
||||
mbim_message_set_arguments(message, "av", 2,
|
||||
"16yuuuuuuu",
|
||||
mbim_uuid_basic_connect, 6,
|
||||
MBIM_CID_SUBSCRIBER_READY_STATUS,
|
||||
MBIM_CID_RADIO_STATE,
|
||||
MBIM_CID_REGISTER_STATE,
|
||||
MBIM_CID_PACKET_SERVICE,
|
||||
MBIM_CID_SIGNAL_STATE,
|
||||
MBIM_CID_CONNECT,
|
||||
"16yuuuu", mbim_uuid_sms, 3,
|
||||
MBIM_CID_SMS_CONFIGURATION,
|
||||
MBIM_CID_SMS_READ,
|
||||
MBIM_CID_SMS_MESSAGE_STORE_STATUS);
|
||||
|
||||
if (mbim_device_send(md->device, 0, message,
|
||||
mbim_device_subscribe_list_set_cb,
|
||||
modem, NULL))
|
||||
return;
|
||||
|
||||
error:
|
||||
mbim_device_shutdown(md->device);
|
||||
|
|
Loading…
Reference in New Issue