Novatel E371 support

Yegor Yefremov yegorslists at googlemail.com
Fri Mar 28 00:48:52 PDT 2014


On Thu, Mar 27, 2014 at 12:08 PM, Bjørn Mork <bjorn at mork.no> wrote:
> Yegor Yefremov <yegorslists at googlemail.com> writes:
>
>> I have following Novatel card
>>
>> Bus 001 Device 003: ID 1410:9011 Novatel Wireless
>
> [..]
>
>> Without kernel changes I get ethX interface. After reading this
>> http://www.draisberghof.de/usb_modeswitch/bb/viewtopic.php?f=3&t=1433
>> I made following change to the CDC driver:
>>
>> diff --git a/drivers/net/usb/cdc_ether.c b/drivers/net/usb/cdc_ether.c
>> index 42e1769..f1ad745 100644
>> --- a/drivers/net/usb/cdc_ether.c
>> +++ b/drivers/net/usb/cdc_ether.c
>> @@ -625,6 +625,13 @@ static const struct usb_device_id  products[] = {
>>         .driver_info = 0,
>>  },
>>
>> +/* Dell Wireless 5804 (Novatel E371) - handled by qmi_wwan */
>> +{
>> +       USB_DEVICE_AND_INTERFACE_INFO(NOVATEL_VENDOR_ID, 0x9011, USB_CLASS_COMM,
>> +                       USB_CDC_SUBCLASS_ETHERNET, USB_CDC_PROTO_NONE),
>> +       .driver_info = 0,
>> +},
>> +
>>  /* AnyDATA ADU960S - handled by qmi_wwan */
>>  {
>>         USB_DEVICE_AND_INTERFACE_INFO(0x16d5, 0x650a, USB_CLASS_COMM,
>>
>> But now I have no interface at all.
>
> You have successfully blacklisted the interface in the cdc_ether drvier,
> but you also need to add it to the qmi_wwan driver to complete the move
> from one driver to another.  Use the entry for the Novatel E362 as a
> template.
>
> The only purpose of this is to make qmi-based tools work with the modem,
> *if* they do so...  I don't think that is confirmed yet for this device
> ID, which is different from the E371 variants we've seen before.

Thanks. The card seems to be working now. I could successfully make a
simple connection, then run DHCP on wwan0 and make some transactions.
Can you see anything alarming in the log below? So far I can see, that
IMEI couldn't be read and SMS stuff seems to make trouble. Let me
know, if I should provide more data.

My system: Linux buildroot 3.14.0-rc4-12737-gefb78a0-dirty #237 SMP
Thu Mar 27 14:34:28 CET 2014 armv7l GNU/Linux
libqmi and mm are in the latest stable versions.

Jan  1 19:53:11 buildroot daemon.info ModemManager[996]: <info>
ModemManager (version 1.2.0) starting...
Jan  1 19:53:12 buildroot daemon.debug ModemManager[996]: cannot
connect to proxy: Could not connect: Connection refused
Jan  1 19:53:12 buildroot daemon.debug ModemManager[996]: spawning new
qmi-proxy (try 1)...
Jan  1 19:53:12 buildroot daemon.debug ModemManager[996]:
[/dev/cdc-wdm0] Checking version info (10 retries)...
Jan  1 19:53:12 buildroot daemon.debug ModemManager[996]:
[/dev/cdc-wdm0] QMI Device supports 14 services:
Jan  1 19:53:12 buildroot daemon.debug ModemManager[996]:
[/dev/cdc-wdm0]    ctl (1.5)
Jan  1 19:53:12 buildroot daemon.debug ModemManager[996]:
[/dev/cdc-wdm0]    wds (1.12)
Jan  1 19:53:12 buildroot daemon.debug ModemManager[996]:
[/dev/cdc-wdm0]    dms (1.6)
Jan  1 19:53:12 buildroot daemon.debug ModemManager[996]:
[/dev/cdc-wdm0]    nas (1.8)
Jan  1 19:53:12 buildroot daemon.debug ModemManager[996]:
[/dev/cdc-wdm0]    qos (1.3)
Jan  1 19:53:12 buildroot daemon.debug ModemManager[996]:
[/dev/cdc-wdm0]    wms (1.3)
Jan  1 19:53:12 buildroot daemon.debug ModemManager[996]:
[/dev/cdc-wdm0]    pds (1.10)
Jan  1 19:53:12 buildroot daemon.debug ModemManager[996]:
[/dev/cdc-wdm0]    auth (1.1)
Jan  1 19:53:12 buildroot daemon.debug ModemManager[996]:
[/dev/cdc-wdm0]    voice (2.1)
Jan  1 19:53:12 buildroot daemon.debug ModemManager[996]:
[/dev/cdc-wdm0]    cat2 (2.0)
Jan  1 19:53:12 buildroot daemon.debug ModemManager[996]:
[/dev/cdc-wdm0]    uim (1.4)
Jan  1 19:53:12 buildroot daemon.debug ModemManager[996]:
[/dev/cdc-wdm0]    pbm (1.4)
Jan  1 19:53:12 buildroot daemon.debug ModemManager[996]:
[/dev/cdc-wdm0]    unknown [0xe3] (1.1)
Jan  1 19:53:12 buildroot daemon.debug ModemManager[996]:
[/dev/cdc-wdm0]    unknown [0xe4] (2.1)
Jan  1 19:53:14 buildroot daemon.info ModemManager[996]: <info>
Creating modem with plugin 'Novatel' and '2' ports
Jan  1 19:53:14 buildroot daemon.info ModemManager[996]: <info>  Modem
for device at '/sys/devices/ocp.3/47400000.usb/47401400.usb/musb-hdrc.0.auto/usb1/1-1/1-1.3'
successfully created
Jan  1 19:53:14 buildroot daemon.debug ModemManager[996]:
[/dev/cdc-wdm0] Checking version info (10 retries)...
Jan  1 19:53:14 buildroot daemon.debug ModemManager[996]:
[/dev/cdc-wdm0] QMI Device supports 14 services:
Jan  1 19:53:14 buildroot daemon.debug ModemManager[996]:
[/dev/cdc-wdm0]    ctl (1.5)
Jan  1 19:53:14 buildroot daemon.debug ModemManager[996]:
[/dev/cdc-wdm0]    wds (1.12)
Jan  1 19:53:14 buildroot daemon.debug ModemManager[996]:
[/dev/cdc-wdm0]    dms (1.6)
Jan  1 19:53:14 buildroot daemon.debug ModemManager[996]:
[/dev/cdc-wdm0]    nas (1.8)
Jan  1 19:53:14 buildroot daemon.debug ModemManager[996]:
[/dev/cdc-wdm0]    qos (1.3)
Jan  1 19:53:14 buildroot daemon.debug ModemManager[996]:
[/dev/cdc-wdm0]    wms (1.3)
Jan  1 19:53:14 buildroot daemon.debug ModemManager[996]:
[/dev/cdc-wdm0]    pds (1.10)
Jan  1 19:53:14 buildroot daemon.debug ModemManager[996]:
[/dev/cdc-wdm0]    auth (1.1)
Jan  1 19:53:14 buildroot daemon.debug ModemManager[996]:
[/dev/cdc-wdm0]    voice (2.1)
Jan  1 19:53:14 buildroot daemon.debug ModemManager[996]:
[/dev/cdc-wdm0]    cat2 (2.0)
Jan  1 19:53:14 buildroot daemon.debug ModemManager[996]:
[/dev/cdc-wdm0]    uim (1.4)
Jan  1 19:53:14 buildroot daemon.debug ModemManager[996]:
[/dev/cdc-wdm0]    pbm (1.4)
Jan  1 19:53:14 buildroot daemon.debug ModemManager[996]:
[/dev/cdc-wdm0]    unknown [0xe3] (1.1)
Jan  1 19:53:14 buildroot daemon.debug ModemManager[996]:
[/dev/cdc-wdm0]    unknown [0xe4] (2.1)
Jan  1 19:53:14 buildroot daemon.debug ModemManager[996]:
[/dev/cdc-wdm0] Setting network port data format...
Jan  1 19:53:14 buildroot daemon.debug ModemManager[996]:
[/dev/cdc-wdm0] Network port data format operation finished
Jan  1 19:53:14 buildroot daemon.debug ModemManager[996]:
[/dev/cdc-wdm0] Allocating new client ID...
Jan  1 19:53:14 buildroot daemon.debug ModemManager[996]:
[/dev/cdc-wdm0] Registered 'dms' (version 1.6) client with ID '1'
Jan  1 19:53:14 buildroot daemon.debug ModemManager[996]:
[/dev/cdc-wdm0] Allocating new client ID...
Jan  1 19:53:14 buildroot daemon.debug ModemManager[996]:
[/dev/cdc-wdm0] Registered 'nas' (version 1.8) client with ID '1'
Jan  1 19:53:14 buildroot daemon.debug ModemManager[996]:
[/dev/cdc-wdm0] Allocating new client ID...
Jan  1 19:53:14 buildroot daemon.debug ModemManager[996]:
[/dev/cdc-wdm0] Registered 'wms' (version 1.3) client with ID '1'
Jan  1 19:53:14 buildroot daemon.debug ModemManager[996]:
[/dev/cdc-wdm0] Allocating new client ID...
Jan  1 19:53:14 buildroot daemon.debug ModemManager[996]:
[/dev/cdc-wdm0] Registered 'pds' (version 1.10) client with ID '1'
Jan  1 19:53:14 buildroot daemon.warn ModemManager[996]: <warn>
couldn't load IMEI: 'Device doesn't report a valid IMEI'
Jan  1 19:53:15 buildroot daemon.info ModemManager[996]: <info>
Modem: state changed (unknown -> disabled)
Jan  1 20:07:23 buildroot daemon.info ModemManager[996]: <info>
Simple connect started...
Jan  1 20:07:23 buildroot daemon.info ModemManager[996]: <info>
Simple connect state (3/8): Enable
Jan  1 20:07:23 buildroot daemon.info ModemManager[996]: <info>  Modem
/org/freedesktop/ModemManager1/Modem/0: state changed (disabled ->
enabling)
Jan  1 20:07:23 buildroot daemon.info ModemManager[996]: <info>  Modem
/org/freedesktop/ModemManager1/Modem/0: 3GPP Registration state
changed (unknown -> registering)
Jan  1 20:07:23 buildroot daemon.info ModemManager[996]: <info>  Modem
/org/freedesktop/ModemManager1/Modem/0: 3GPP Registration state
changed (registering -> home)
Jan  1 20:07:23 buildroot daemon.debug ModemManager[996]: Couldn't
read SMS messages: QMI protocol error (17): 'MissingArgument'
Jan  1 20:07:23 buildroot daemon.debug ModemManager[996]: Couldn't
read SMS messages: QMI protocol error (48): 'InvalidArgument'
Jan  1 20:07:23 buildroot daemon.debug ModemManager[996]: Couldn't
read SMS messages: QMI protocol error (48): 'InvalidArgument'
Jan  1 20:07:23 buildroot daemon.debug ModemManager[996]: Couldn't
read SMS messages: QMI protocol error (48): 'InvalidArgument'
Jan  1 20:07:23 buildroot daemon.debug ModemManager[996]: Couldn't
read SMS messages: QMI protocol error (17): 'MissingArgument'
Jan  1 20:07:23 buildroot daemon.debug ModemManager[996]: Couldn't
read SMS messages: QMI protocol error (52): 'DeviceNotReady'
Jan  1 20:07:23 buildroot daemon.debug ModemManager[996]: Couldn't
read SMS messages: QMI protocol error (48): 'InvalidArgument'
Jan  1 20:07:23 buildroot daemon.debug ModemManager[996]: Couldn't
read SMS messages: QMI protocol error (48): 'InvalidArgument'
Jan  1 20:07:23 buildroot daemon.info ModemManager[996]: <info>  Modem
/org/freedesktop/ModemManager1/Modem/0: state changed (enabling ->
registered)
Jan  1 20:07:23 buildroot daemon.info ModemManager[996]: <info>
Simple connect state (4/8): Wait to get fully enabled
Jan  1 20:07:23 buildroot daemon.info ModemManager[996]: <info>
Simple connect state (5/8): Register
Jan  1 20:07:23 buildroot daemon.info ModemManager[996]: <info>  Modem
/org/freedesktop/ModemManager1/Modem/0: access technology changed
(unknown -> umts)
Jan  1 20:07:23 buildroot daemon.info ModemManager[996]: <info>  Modem
/org/freedesktop/ModemManager1/Modem/0: signal quality updated (54)
Jan  1 20:07:23 buildroot daemon.info ModemManager[996]: <info>
Simple connect state (6/8): Bearer
Jan  1 20:07:23 buildroot daemon.info ModemManager[996]: <info>
Simple connect state (7/8): Connect
Jan  1 20:07:23 buildroot daemon.info ModemManager[996]: <info>  Modem
/org/freedesktop/ModemManager1/Modem/0: state changed (registered ->
connecting)
Jan  1 20:07:23 buildroot daemon.debug ModemManager[996]:
[/dev/cdc-wdm0] Allocating new client ID...
Jan  1 20:07:24 buildroot daemon.debug ModemManager[996]:
[/dev/cdc-wdm0] Registered 'wds' (version 1.12) client with ID '1'
Jan  1 20:07:27 buildroot daemon.info ModemManager[996]: <info>  Modem
/org/freedesktop/ModemManager1/Modem/0: state changed (connecting ->
connected)
Jan  1 20:07:27 buildroot daemon.info ModemManager[996]: <info>
Simple connect state (8/8): All done
Jan  1 20:07:50 buildroot daemon.info ModemManager[996]: <info>  Modem
/org/freedesktop/ModemManager1/Modem/0: signal quality updated (47)
Jan  1 20:07:53 buildroot daemon.info ModemManager[996]: <info>  Modem
/org/freedesktop/ModemManager1/Modem/0: signal quality updated (59)
Jan  1 20:07:54 buildroot daemon.info ModemManager[996]: <info>  Modem
/org/freedesktop/ModemManager1/Modem/0: signal quality updated (55)
Jan  1 20:07:56 buildroot daemon.info ModemManager[996]: <info>  Modem
/org/freedesktop/ModemManager1/Modem/0: signal quality updated (49)
Jan  1 20:08:09 buildroot daemon.info ModemManager[996]: <info>  Modem
/org/freedesktop/ModemManager1/Modem/0: state changed (connected ->
disconnecting)
Jan  1 20:08:09 buildroot daemon.info ModemManager[996]: <info>  Modem
/org/freedesktop/ModemManager1/Modem/0: state changed (disconnecting
-> registered)

Yegor


More information about the ModemManager-devel mailing list