mbim: Keep track of max_sessions

Also set the CID range 0..max sessions.  This forces the default context
into cid 0
This commit is contained in:
Denis Kenzior 2017-11-13 20:45:26 -06:00
parent 2f112eaa9b
commit 44acd97dd9
1 changed files with 5 additions and 0 deletions

View File

@ -55,6 +55,7 @@ struct mbim_data {
struct mbim_device *device;
uint16_t max_segment;
uint8_t max_outstanding;
uint8_t max_sessions;
};
static void mbim_debug(const char *str, void *user_data)
@ -209,6 +210,8 @@ static void mbim_device_caps_info_cb(struct mbim_message *message, void *user)
if (!r)
goto error;
md->max_sessions = max_sessions;
DBG("DeviceId: %s", device_id);
DBG("FirmwareInfo: %s", firmware_info);
DBG("HardwareInfo: %s", hardware_info);
@ -386,6 +389,8 @@ static void mbim_post_sim(struct ofono_modem *modem)
ofono_sms_create(modem, 0, "mbim", md->device);
gprs = ofono_gprs_create(modem, 0, "mbim", md->device);
ofono_gprs_set_cid_range(gprs, 0, md->max_sessions);
gc = ofono_gprs_context_create(modem, 0, "mbim", md->device);
if (gc) {
ofono_gprs_context_set_type(gc,