Message ID | 20240501232144.14025-1-denkenz@gmail.com (mailing list archive) |
---|---|
State | Accepted |
Commit | d61fe2752b1fed7badf73a1d37fafb9dc6615e41 |
Headers | show |
Series | [v2,1/6] qmi: gprs: register to NAS indications earlier | expand |
Hello: This series was applied to ofono.git (master) by Denis Kenzior <denkenz@gmail.com>: On Wed, 1 May 2024 18:21:28 -0500 you wrote: > We can register to NAS indications much earlier, as soon as the NAS > service handle is created. Since the handle is now a 'lightweight' > handle, all service registrations are automatically unregistered when > the handle is destroyed. There's no need to track the registered > indication id and to remove it separately. > --- > drivers/qmimodem/gprs.c | 14 ++------------ > 1 file changed, 2 insertions(+), 12 deletions(-) Here is the summary with links: - [v2,1/6] qmi: gprs: register to NAS indications earlier https://git.kernel.org/pub/scm/network/ofono/ofono.git/?id=d61fe2752b1f - [v2,2/6] qmi: gprs: Split out GET_DEFAULT_PROFILE_NUMBER request https://git.kernel.org/pub/scm/network/ofono/ofono.git/?id=5c6fc832ce25 - [v2,3/6] qmi: gprs: register and listen to event reports https://git.kernel.org/pub/scm/network/ofono/ofono.git/?id=9a0deedcdefb - [v2,4/6] qmi: gprs: Register for other notifications https://git.kernel.org/pub/scm/network/ofono/ofono.git/?id=92a122de4a05 - [v2,5/6] qmi: wds: add utility to parse Data System Status tlv https://git.kernel.org/pub/scm/network/ofono/ofono.git/?id=e075175baff2 - [v2,6/6] qmi: gprs: Obtain LTE attach parameters after indication https://git.kernel.org/pub/scm/network/ofono/ofono.git/?id=c12a6251b1fb You are awesome, thank you!
diff --git a/drivers/qmimodem/gprs.c b/drivers/qmimodem/gprs.c index 738271905848..bca1897ea02f 100644 --- a/drivers/qmimodem/gprs.c +++ b/drivers/qmimodem/gprs.c @@ -39,7 +39,6 @@ struct gprs_data { struct qmi_service *nas; struct qmi_service *wds; unsigned int default_profile; - uint16_t serving_system_indication_id; }; static bool extract_ss_info(struct qmi_result *result, int *status, int *tech) @@ -306,10 +305,6 @@ static void get_default_profile_cb(struct qmi_result *result, void *user_data) */ qmi_service_send(data->nas, QMI_NAS_GET_SERVING_SYSTEM, NULL, ss_info_notify, gprs, NULL); - data->serving_system_indication_id = - qmi_service_register(data->nas, - QMI_NAS_SERVING_SYSTEM_INDICATION, - ss_info_notify, gprs, NULL); ofono_gprs_register(gprs); return; @@ -369,6 +364,8 @@ static void create_nas_cb(struct qmi_service *service, void *user_data) } data->nas = service; + qmi_service_register(data->nas, QMI_NAS_SERVING_SYSTEM_INDICATION, + ss_info_notify, gprs, NULL); qmi_service_create_shared(data->dev, QMI_SERVICE_WDS, create_wds_cb, gprs, NULL); @@ -403,13 +400,6 @@ static void qmi_gprs_remove(struct ofono_gprs *gprs) ofono_gprs_set_data(gprs, NULL); qmi_service_free(data->wds); - - if (data->serving_system_indication_id) { - qmi_service_unregister(data->nas, - data->serving_system_indication_id); - data->serving_system_indication_id = 0; - } - qmi_service_free(data->nas); l_free(data);