netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Phil Sutter <phil-ydcDiazATMQ@public.gmane.org>
To: Dan Williams <dcbw-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
Cc: Elina Pasheva
	<epasheva-ywE8TTl5eJHWpu6QEFMNjNBPR1lH4CV8@public.gmane.org>,
	dbrownell-Rn4VEauK+AKRv+LV9MX5uipxlwaOVQ5f@public.gmane.org,
	davem-fT/PcQaiUtIeIZ0/mPfg9Q@public.gmane.org,
	netdev-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	linux-usb-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	Rory Filer
	<rfiler-ywE8TTl5eJHWpu6QEFMNjNBPR1lH4CV8@public.gmane.org>
Subject: Re: strange behaviour of MC7700 with sierra_net
Date: Thu, 28 Jul 2011 18:32:02 +0200	[thread overview]
Message-ID: <20110728163202.GA20259@orbit.nwl.cc> (raw)
In-Reply-To: <1311795643.17655.13.camel-wKZy7rqYPVb5EHUCmHmTqw@public.gmane.org>

Dan,

Thanks for the quick reply!

On Wed, Jul 27, 2011 at 02:40:40PM -0500, Dan Williams wrote:
> I wonder if the firmware changed and Sierra hasn't updated the driver
> yet.  I've got a usb306 which also uses sierra_net which doesn't have
> this problem.  It looks like the driver tries to sync with the firmware
> right after binding to the net interface, so that means at least a
> couple of SYNC requests have already happened by the time you start
> getting errors.  My first thought here is simply that the firmware on
> the MC7700 doesn't work like the rest of the devices that sierra_net
> expects, and for that you'd have to get Sierra to weigh in on the
> required changes :(

That's exactly the case. My printf-debugging shows that ~30 calls to
sierra_net_dosync() sycceed before it starts failing. Why the heck does
that work if I set the interface up? When doing so, the driver
immediately receives a whole bunch of restart-messages. Looks
like the number matches the number of successfully sent sync-messages.

This looks like the turned down interface is holding something back, but
looking with usbmon I see communication (this is the point when the
sync-messages start to fail):
| da9ebc40 74.842086 S Co:1:035:0 s 21 00 0000 0007 0004 4 = 00002000
| da9ebc40 74.842971 C Co:1:035:0 0 4 >
| da9ebc40 76.848151 S Co:1:035:0 s 21 00 0000 0007 0004 4 = 00002000
| da9ebc40 76.848835 C Co:1:035:0 -32 4 >

But maybe something should be done in the beginning that's done when the
interface comes up. The capture in that situation is this:
| da9ebc40 88.898257 S Co:1:035:0 s 21 00 0000 0007 0004 4 = 00002000
| da9ebc40 88.898860 C Co:1:035:0 -32 4 >
| dbe29dc0 90.548212 S Ii:1:035:8 -:64 64 <
| da9ebc40 90.548619 S Bi:1:035:9 - 8192 <
| dbe29c40 90.548632 S Bi:1:035:9 - 8192 <
| daab45c0 90.548639 S Bi:1:035:9 - 8192 <
| daac3640 90.548645 S Bi:1:035:9 - 8192 <
| da9cce40 90.548651 S Bi:1:035:9 - 8192 <
| dbe6b7c0 90.548657 S Bi:1:035:9 - 8192 <
| dab0ae40 90.548663 S Bi:1:035:9 - 8192 <
| dbe29640 90.548669 S Bi:1:035:9 - 8192 <
| dbe29340 90.548675 S Bi:1:035:9 - 8192 <
| dbe6b540 90.548681 S Bi:1:035:9 - 8192 <
| dbe6b0c0 90.548688 S Bi:1:035:9 - 8192 <
| dbe29dc0 90.550814 C Ii:1:035:8 0:64 8 = a1010000 07000000
| dbe29dc0 90.550868 S Ii:1:035:8 -:64 64 <
| daac3540 90.550980 S Ci:1:035:0 s a1 01 0000 0007 0400 1024 <
| daac3540 90.551694 C Ci:1:035:0 0 68 = 00406200 53574939 32303058 5f30332e 30302e30 322e3030 41502052 32303332
| dbe29dc0 90.558801 C Ii:1:035:8 0:64 8 = a1010000 07000000
| dbe29dc0 90.558960 S Ii:1:035:8 -:64 64 <
| daac3540 90.559054 S Ci:1:035:0 s a1 01 0000 0007 0400 1024 <
| daac3540 90.559544 C Ci:1:035:0 0 68 = 00406200 53574939 32303058 5f30332e 30302e30 322e3030 41502052 32303332
| dbe29dc0 90.566798 C Ii:1:035:8 0:64 8 = a1010000 07000000

The kernel log output of the above timeframe:
| Jul 28 17:55:36 (none) user.debug kernel: [266833.170570] usb 1-1: sierra_net_send_sync
| Jul 28 17:55:36 (none) user.info kernel: [266833.170590] sierra_net_send_sync: netif is not running
| Jul 28 17:55:36 (none) user.err kernel: [266833.171515] sierra_net 1-1:1.7: wwan0: Submit SYNC failed -32
| Jul 28 17:55:36 (none) user.err kernel: [266833.174713] sierra_net 1-1:1.7: wwan0: Send SYNC failed, status -32
| Jul 28 17:55:38 (none) user.debug kernel: [266834.823421] usb 1-1: sierra_net_status
| Jul 28 17:55:38 (none) user.debug kernel: [266834.824316] usb 1-1: sierra_net_kevent: Received status message, 0044 bytes
| Jul 28 17:55:38 (none) user.debug kernel: [266834.824475] usb 1-1: Restart reported: 0, stopping sync timer
| Jul 28 17:55:38 (none) user.debug kernel: [266834.831400] usb 1-1: sierra_net_status
| Jul 28 17:55:38 (none) user.debug kernel: [266834.832268] usb 1-1: sierra_net_kevent: Received status message, 0044 bytes
| Jul 28 17:55:38 (none) user.debug kernel: [266834.832426] usb 1-1: Restart reported: 0, stopping sync timer

> Since the MC7700 is an LTE module it's 100% likely the firmware is
> different, or at least significantly rebased, from the existing Sierra
> HSPA/EVDO parts that use sierra_net and thus I wouldn't necessarily
> expect it to work out of the box.

Well, it's obviously not that bad. Setting wwan0 up as a workaround,
everything's quite fine. Also, if I'm fast enough initialising the modem
via AT-commands before the control-tty dies, I can dial in even with
wwan0 being down, set it up and receive an address via DHCP. 

Since the MC7700 has the same USB product and vendor IDs as any other
direct-IP device (1199:68a3), Sierra may indeed have meant this device
to act identical to the other ones. Or their driver-developers are just
a little bit masochistic. ;)

Hopefully Elina Pasheva can provide some helpful insights here.

Greetings, Phil
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

  parent reply	other threads:[~2011-07-28 16:32 UTC|newest]

Thread overview: 89+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-07-27 14:12 strange behaviour of MC7700 with sierra_net Phil Sutter
     [not found] ` <20110727141246.GC29616-2COwY06ShZsYt6otZODPyA@public.gmane.org>
2011-07-27 19:40   ` Dan Williams
     [not found]     ` <1311795643.17655.13.camel-wKZy7rqYPVb5EHUCmHmTqw@public.gmane.org>
2011-07-28 16:32       ` Phil Sutter [this message]
     [not found] ` <8F90F944E50427428C60E12A34A309D23424BB0F25@carmd-exchmb01.sierrawireless.local>
     [not found]   ` <8F90F944E50427428C60E12A34A309D23424BB0F25-3qf8vkpM5jTbmvMHnzRVpW3Pdy6AhKVLXbPIYa3/oNjDOqzlkpFKJg@public.gmane.org>
2011-08-04 16:38     ` Phil Sutter
2013-01-04 16:48 ` [PATCH 1/2] usbnet: allow status interrupt URB to always be active Dan Williams
2013-01-04 16:51   ` [PATCH 2/2] sierra_net: keep status interrupt URB active over netdev open/close Dan Williams
     [not found]     ` <1357318289.5370.19.camel-wKZy7rqYPVb5EHUCmHmTqw@public.gmane.org>
2013-02-06 18:42       ` [PATCH 2/2 v2] sierra_net: fix issues with SYNC/RESTART messages and interrupt pipe setup Dan Williams
     [not found]         ` <1360176176.11742.16.camel-wKZy7rqYPVb5EHUCmHmTqw@public.gmane.org>
2013-02-06 20:17           ` Oliver Neukum
2013-02-07 21:09             ` Dan Williams
2013-02-06 21:11         ` Bjørn Mork
2013-02-07 17:06           ` Dan Williams
2013-02-13 11:44             ` Bjørn Mork
2013-02-13 16:34               ` Dan Williams
2013-01-04 22:16   ` [PATCH 1/2] usbnet: allow status interrupt URB to always be active Oliver Neukum
2013-01-05  1:26     ` Dan Williams
2013-01-05 11:01       ` Oliver Neukum
2013-01-05 11:44         ` Bjørn Mork
2013-01-07 15:25         ` Dan Williams
2013-01-14 17:52         ` Dan Williams
     [not found]       ` <1357349193.19684.3.camel-wKZy7rqYPVb5EHUCmHmTqw@public.gmane.org>
2013-01-05 10:59         ` Bjørn Mork
     [not found]           ` <87y5g7nbej.fsf-lbf33ChDnrE/G1V5fR+Y7Q@public.gmane.org>
2013-01-07  7:40             ` Oliver Neukum
2013-01-07 15:21           ` Dan Williams
2013-01-11  3:06         ` Ming Lei
2013-01-14 17:23           ` Dan Williams
2013-01-15  1:13             ` Ming Lei
2013-02-06 18:36   ` [PATCH 1/2 v2] " Dan Williams
2013-02-06 20:19     ` Oliver Neukum
2013-03-28 16:30   ` [PATCH 1/2 v3] " Dan Williams
     [not found]     ` <1364488207.1877.20.camel-wKZy7rqYPVb5EHUCmHmTqw@public.gmane.org>
2013-03-28 16:32       ` [PATCH 2/2 v3] sierra_net: keep status interrupt URB active Dan Williams
     [not found]         ` <1364488327.1877.22.camel-wKZy7rqYPVb5EHUCmHmTqw@public.gmane.org>
2013-03-29 19:21           ` David Miller
2013-03-29 19:20       ` [PATCH 1/2 v3] usbnet: allow status interrupt URB to always be active David Miller
     [not found]     ` <CACVXFVMBAzTYZKiE_uSTqr_yB4f7c5_PSnK=LBP6=oWdWwYHfg@mail.gmail.com>
     [not found]       ` <CACVXFVMBAzTYZKiE_uSTqr_yB4f7c5_PSnK=LBP6=oWdWwYHfg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2013-04-01 16:04         ` Dan Williams
2013-04-09 23:02           ` [PATCH 1/2 v4] " Dan Williams
2013-04-09 23:05             ` [PATCH 2/2 v4] sierra_net: keep status interrupt URB active Dan Williams
2013-04-10  7:15               ` Oliver Neukum
2013-04-10 14:57                 ` Dan Williams
2013-04-10 15:01                   ` Oliver Neukum
2013-04-10  7:23             ` [PATCH 1/2 v4] usbnet: allow status interrupt URB to always be active Oliver Neukum
     [not found]               ` <2328167.HJRXSHNhKT-7ztolUikljGernLeA6q8OA@public.gmane.org>
2013-04-10 12:49                 ` Dan Williams
2013-04-10 13:06                   ` Oliver Neukum
2013-04-10 13:18                     ` Dan Williams
2013-04-10 13:29                       ` Oliver Neukum
     [not found]                         ` <1542762.9EJvNHlBNo-7ztolUikljGernLeA6q8OA@public.gmane.org>
2013-04-10 13:54                           ` Dan Williams
     [not found]                             ` <1365602083.28888.40.camel-wKZy7rqYPVb5EHUCmHmTqw@public.gmane.org>
2013-04-10 13:58                               ` Oliver Neukum
2013-04-10 15:01                                 ` Dan Williams
2013-04-10 18:10                                   ` Oliver Neukum
2013-04-10 20:30                                     ` [PATCH 1/2 v5] " Dan Williams
     [not found]                                       ` <1365625850.22411.1.camel-wKZy7rqYPVb5EHUCmHmTqw@public.gmane.org>
2013-04-10 20:33                                         ` [PATCH 2/2 v5] sierra_net: keep status interrupt URB active Dan Williams
2013-04-11  2:31                                         ` [PATCH 1/2 v5] usbnet: allow status interrupt URB to always be active Ming Lei
2013-04-11  6:50                                           ` Oliver Neukum
2013-04-11  8:06                                             ` Bjørn Mork
2013-04-11  8:37                                               ` Ming Lei
2013-04-11  9:59                                                 ` Oliver Neukum
2013-04-11 10:04                                                 ` Bjørn Mork
2013-04-11 10:09                                                   ` Ming Lei
2013-04-11 10:19                                                   ` Ming Lei
     [not found]                                                     ` <CACVXFVNn9MQr6JLdin=u642Jb-2ZPfVk8YaBmNdhU0_2e7WJqQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2013-04-11 10:26                                                       ` Bjørn Mork
2013-04-11 10:30                                                         ` Ming Lei
2013-04-11 11:08                                                           ` Bjørn Mork
     [not found]                                                             ` <87d2u1wci6.fsf-lbf33ChDnrE/G1V5fR+Y7Q@public.gmane.org>
2013-04-11 11:42                                                               ` Ming Lei
     [not found]                                                                 ` <CACVXFVO13tG606nDHth5rEA9jexj1iFHnry5ktrMpm_aGGTSvw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2013-04-11 11:54                                                                   ` Oliver Neukum
2013-04-11 12:16                                                                     ` Ming Lei
2013-04-11  8:09                                             ` Ming Lei
2013-04-11  9:53                                               ` Oliver Neukum
2013-04-11 10:03                                                 ` Ming Lei
2013-04-11 11:14                                                   ` Oliver Neukum
2013-04-11 12:11                                                     ` Ming Lei
2013-04-11 12:28                                                       ` Oliver Neukum
2013-04-11 12:59                                                         ` Ming Lei
     [not found]                                                           ` <CACVXFVPPzva+EwjNdxWsg4FufCc0zzzzvhGH_nLv479vT8VcxQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2013-04-12  6:37                                                             ` Oliver Neukum
2013-04-12  9:42                                                               ` Ming Lei
2013-04-12 10:02                                                                 ` Oliver Neukum
2013-04-12 10:08                                                                   ` Ming Lei
2013-04-12 10:13                                                                   ` Bjørn Mork
2013-04-11 15:28                                           ` Dan Williams
2013-04-12  7:28                                             ` Oliver Neukum
2013-04-10 21:35                                       ` Oliver Neukum
2013-04-15 15:59                                       ` Dan Williams
2013-04-16  1:15                                         ` Ming Lei
2013-04-16  7:57                                           ` Oliver Neukum
     [not found]                                             ` <1637650.tuYfvStuVJ-7ztolUikljGernLeA6q8OA@public.gmane.org>
2013-04-17  1:56                                               ` Ming Lei
2013-04-17  6:55                                                 ` Oliver Neukum
     [not found]                                                   ` <5581442.KzM2iaDSQ0-7ztolUikljGernLeA6q8OA@public.gmane.org>
2013-04-18  3:51                                                     ` Ming Lei
2013-04-19  8:25                                                       ` Oliver Neukum
2013-04-24 12:31                                                         ` Dan Williams
2013-04-25 13:00                                                           ` Oliver Neukum
     [not found]             ` <1365548547.23372.2.camel-wKZy7rqYPVb5EHUCmHmTqw@public.gmane.org>
2013-04-10 13:25               ` [PATCH 1/2 v4] " Bjørn Mork
2013-04-10 13:31                 ` Oliver Neukum
     [not found]                 ` <1365604263.28888.56.camel@dcbw.foobar.com>
2013-04-10 15:21                   ` Bjørn Mork

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20110728163202.GA20259@orbit.nwl.cc \
    --to=phil-ydcdiazatmq@public.gmane.org \
    --cc=davem-fT/PcQaiUtIeIZ0/mPfg9Q@public.gmane.org \
    --cc=dbrownell-Rn4VEauK+AKRv+LV9MX5uipxlwaOVQ5f@public.gmane.org \
    --cc=dcbw-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org \
    --cc=epasheva-ywE8TTl5eJHWpu6QEFMNjNBPR1lH4CV8@public.gmane.org \
    --cc=linux-usb-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=netdev-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=rfiler-ywE8TTl5eJHWpu6QEFMNjNBPR1lH4CV8@public.gmane.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).