diff options
author | Stephan Gerhold <stephan.gerhold@kernkonzept.com> | 2022-08-03 14:59:34 +0200 |
---|---|---|
committer | Aleksander Morgado <aleksander@aleksander.es> | 2022-08-18 13:13:25 +0000 |
commit | 8b8b5c22f7e6498e12a5319ae95a5edb18bd8fdb (patch) | |
tree | 01bb34f68965162ea8cf443142c3f1382fa4e9e9 /examples/network-scan-python | |
parent | 5cc34d5f86bad12382d97e1daea894d8666a527d (diff) |
bearer-qmi: Add fallback for firmware with broken "Bind Data Port"
"Bind Data Port" does not work correctly on newer platforms with
BAM-DMUX (e.g. MSM8909). It returns "device unsupported" even for
valid SIO port numbers.
As an alternative, it seems to be possible to use the newer "Bind *Mux*
Data Port" instead. This works even when QMAP multiplexing is disabled
(using WDA "Set Data Format"). In this case the mux-id seems to be
entirely ignored and can be a dummy value such as MUX_ID_UNBOUND.
Implement this by checking for the error code of "Bind Data Port"
and fallback to "Bind Mux Data Port" instead.
The important part in this case is that the endpoint type and interface
number are set correctly. At the moment this works only for the "wwan0"
interface because the endpoint information is currently maintained
globally as part of the QMI control port instead of being handled
separately per data/net port. Further refactoring is needed to enable
multiplexing on these platforms.
Diffstat (limited to 'examples/network-scan-python')
0 files changed, 0 insertions, 0 deletions