problem with Sierra MC7750 (and a workaround)
Aleksander Morgado
aleksander at lanedo.com
Thu Sep 26 23:42:15 PDT 2013
On 27/09/13 02:21, Heath Kehoe wrote:
> I was trying to get an MC7750-based USB modem working with libqmi. The
> kernel modules sierra and qmi_wwan are loaded when the device is
> connected; I can use qmi-network to start the data connection, and
> everything seems to work except there's no data flow. No packets get
> sent or received.
>
> Turns out the problem is that the modem needs to be explicitly told to
> use QMI_CTL_DATA_LINK_PROTOCOL_802_3 via CtlSetDataFormat. And since
> qmicli basically uses the default flags to qmi_device_open, libqmi
> doesn't send a CtlSetDataFormat.
>
> As a quick-and-dirty workaround, I hacked qmicli.c to add
> QMI_DEVICE_OPEN_FLAGS_NET_802_3 and
> QMI_DEVICE_OPEN_FLAGS_NET_NO_QOS_HEADER to open_flags. With that change,
> the MC7750 works.
>
> I was thinking I could extend qmicli.c to add a new option to be able to
> set those flags. Something like:
>
> --device-open-net=<mode> where mode is:
> "en" : 802_3 + NO_QOS_HEADER
> "eq" : 802_3 + QOS_HEADER
> "rn" : RAW_IP + NO_QOS_HEADER
> "rq" : RAW_IP + QOS_HEADER
>
> If the option is not given, the behavior will be like it is now (no
> flags, which means no CtlSetDataFormat is sent).
>
> Thoughts?
>
How about this?
--device-open-net="net-802-3,net-no-qos-header"
--device-open-net="net-802-3,net-qos-header"
--device-open-net="net-raw-ip,net-no-qos-header"
--device-open-net="net-raw-ip,net-qos-header"
So, --device-open-net would accept a list of up to 2 strings; where each
string given is one of the "nicknames" of the QmiDeviceOpenFlags.
--
Aleksander
More information about the libqmi-devel
mailing list