• Bjørn Mork's avatar
    net: qmi_wwan: MDM9x30 specific power management · 93725149
    Bjørn Mork authored
    MDM9x30 based modems appear to go into a deeper sleep when
    suspended without "Remote Wakeup" enabled.  The QMI interface
    will not respond unless a "set DTR" control request is sent
    on resume. The effect is similar to a QMI_CTL SYNC request,
    resetting (some of) the firmware state.
    
    We allow userspace sessions to span multiple character device
    open/close sequences.  This means that userspace can depend
    on firmware state while both the netdev and the character
    device are closed.  We have disabled "needs_remote_wakeup" at
    this point to allow devices without remote wakeup support to
    be auto-suspended.
    
    To make sure the MDM9x30 keeps firmware state, we need to
    keep "needs_remote_wakeup" always set. We also need to
    issue a "set DTR" request to enable the QMI interface.
    Signed-off-by: default avatarBjørn Mork <bjorn@mork.no>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    93725149
qmi_wwan.c 34.3 KB