• Kristian Evensen's avatar
    qmi_wwan: Support dynamic config on Quectel EP06 · 7c5cca35
    Kristian Evensen authored
    Quectel EP06 (and EM06/EG06) supports dynamic configuration of USB
    interfaces, without the device changing VID/PID or configuration number.
    When the configuration is updated and interfaces are added/removed, the
    interface numbers change. This means that the current code for matching
    EP06 does not work.
    
    This patch removes the current EP06 interface number match, and replaces
    it with a match on class, subclass and protocol. Unfortunately, matching
    on those three alone is not enough, as the diag interface exports the
    same values as QMI. The other serial interfaces + adb export different
    values and do not match.
    
    The diag interface only has two endpoints, while the QMI interface has
    three. I have therefore added a check for number of interfaces, and we
    ignore the interface if the number of endpoints equals two.
    Signed-off-by: default avatarKristian Evensen <kristian.evensen@gmail.com>
    Acked-by: default avatarBjørn Mork <bjorn@mork.no>
    Acked-by: default avatarDan Williams <dcbw@redhat.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    7c5cca35
qmi_wwan.c 49.1 KB