diff options
author | Kristian Evensen <kristian.evensen@gmail.com> | 2018-09-08 13:50:48 +0200 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2018-09-10 10:48:54 -0700 |
commit | 7c5cca3588545e7f255171e28e0dd6e384ebb91d (patch) | |
tree | 5df51af919b5543418ede09ea418c9fdee400640 /fs | |
parent | 3ebb17446b954b7d39264564ec3f7522d502e785 (diff) | |
download | linux-7c5cca3588545e7f255171e28e0dd6e384ebb91d.tar.gz linux-7c5cca3588545e7f255171e28e0dd6e384ebb91d.tar.bz2 linux-7c5cca3588545e7f255171e28e0dd6e384ebb91d.zip |
qmi_wwan: Support dynamic config on Quectel EP06
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: Kristian Evensen <kristian.evensen@gmail.com>
Acked-by: Bjørn Mork <bjorn@mork.no>
Acked-by: Dan Williams <dcbw@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'fs')
0 files changed, 0 insertions, 0 deletions