Skip to content
  • Dan Williams's avatar
    core: consolidate mobile broadband device types · 2140dad5
    Dan Williams authored
    These days more and more devices are showing up that support a
    number of different access technology families in the same hardware,
    like Qualcomm Gobi (CDMA and GSM), Pantech UM190 (CDMA and GSM),
    Pantech UML290 (CDMA and LTE), LG VL600 (CDMA and LTE), Sierra
    320U (GSM and LTE), etc.  The previous scheme of having device
    classes based on access technology family simply cannot handle
    this hardware and attempting to add LTE to both the CDMA and GSM
    device classes would result in a bunch of code duplication that
    we don't want.  There's a better way...
    
    Instead, combine both CDMA and GSM device classes into a generic
    "Modem" device class that provides capabilities indicating what
    access technology families a modem supports, and what families
    it supports immediately without a firmware reload.  (Gobi devices
    for example require a firmware reload before they can switch
    between GSM and CDMA).  This provides the necessary flexibility
    to the client and allows us to keep the API stable when the
    same consolidation change is made in ModemManager.
    
    The current code doesn't yet allow multi-mode operation internally,
    but the API is now what we want it to be and won't need to be
    changed.
    2140dad5