diff options
author | Aleksander Morgado <aleksandermj@chromium.org> | 2023-07-14 10:31:25 +0000 |
---|---|---|
committer | Aleksander Morgado <aleksandermj@chromium.org> | 2023-07-14 10:33:06 +0000 |
commit | 22d06d6b534607b924bd7e920c2668df8d06fb3d (patch) | |
tree | 684981a2535b8d766aa0484e1748d24d99faf031 | |
parent | 0724f45731600219cd0598232792c51207586ed2 (diff) |
broadband-modem-mbim: propagate packet service state to 3GPP iface unconditionally
-rw-r--r-- | src/mm-broadband-modem-mbim.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/src/mm-broadband-modem-mbim.c b/src/mm-broadband-modem-mbim.c index 81c81da0..0ed7ec42 100644 --- a/src/mm-broadband-modem-mbim.c +++ b/src/mm-broadband-modem-mbim.c @@ -4691,14 +4691,16 @@ update_packet_service_info (MMBroadbandModemMbim *self, { MMModem3gppPacketServiceState state; - if (packet_service_state == self->priv->enabled_cache.packet_service_state) - return; - - self->priv->enabled_cache.packet_service_state = packet_service_state; + /* Report the new value to the 3GPP interface right away, don't assume it has the same + * cached value. */ state = mm_modem_3gpp_packet_service_state_from_mbim_packet_service_state (packet_service_state); mm_iface_modem_3gpp_update_packet_service_state (MM_IFACE_MODEM_3GPP (self), state); + if (packet_service_state == self->priv->enabled_cache.packet_service_state) + return; + /* PS reg state depends on the packet service state */ + self->priv->enabled_cache.packet_service_state = packet_service_state; update_registration_info (self, FALSE, self->priv->enabled_cache.reg_state, |