[RFC] Deprecate SubscriptionState?

Ben Chan benchan at chromium.org
Mon Jul 30 07:38:23 UTC 2018


Hi Aleksander,

I'm actually wiring up SubscriptionState for some MBIM modems that
support MBIM_CID_PCO (which just landed in libmbim), and about to send
over some patches. It's true that the PCO of interest is the
Verizon-specific PCO, which is used for several use cases (e.g. the
SIM is unprovisioned / no active subscription, the account runs out of
data allowance, etc). It's also true that some modems only
support/expose Verizon-specific PCO, which is likely due to
certification requirements from Verizon. The MBIM_CID_PCO document
from Microsoft also uses Verizon PCO as an example :-|

We went with the SubscriptionState property mostly because the Altair
modem only reports a portion of the PCO (e.g. FF00 130184xx). I'm
testing another MBIM modem which exposes raw PCO info, which is tied
to an active connection (i.e. MBIM_CID_PCO SessionId is tied to
MBIM_CID_CONNECT SessionId) and are updated over time via MBIM_CID_PCO
notifications.

I guess we could depreciate the SubscriptionState property and let
ModemManger simply forward PCO notifications to other clients. What
D-Bus interface are you considering?  For the Altair modem, we may
need to cheat a little bit by repackaging the partial PCO info into a
valid PCO structure.

Thanks,
Ben

On Sat, Jul 28, 2018 at 1:43 PM Aleksander Morgado
<aleksander at aleksander.es> wrote:
>
> Hey Dan, Ben & all,
>
> The SubscriptionState property was originally thought to expose the
> state of the subscription with the operator. It has been implemented
> only in the Altair LTE plugin, and the current implementation is based
> on two main things:
>  * Verizon-specific logic that allows knowing the subscription state
> based on the PCO info.
>  * Registration check errors, e.g. to say that the SIM is
> unprovisioned when the registration fails.
>
> I'm not sure any of the previous two things are very robust. The
> Verizon-specific parsing will only work for Verizon, and the
> registration check errors may be caused by multiple different root
> causes. To me it looks like the Altair LTE plugin is trying to do more
> than it's supposed to do. It would be much better if we exposed the
> raw PCO info received, and let upper layers process that if needed
> with operator-specific logic.
>
> What do you all think?
> Should we deprecate the SubscriptionState property?
> Should we expose the raw PCO info?



>
> --
> Aleksander
> https://aleksander.es
> _______________________________________________
> ModemManager-devel mailing list
> ModemManager-devel at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/modemmanager-devel


More information about the ModemManager-devel mailing list