Re: [MM] [PATCH 2/5] novatel: Use the ALLOWED_SINGLE_AT property. Saves 5 seconds on probing.
Dan Williams writes: > On Sat, 2012-05-05 at 10:41 +0200, Bjørn Mork wrote: >> Dan Williams writes: >> >> > Port layout of the Novatel 551L (LTE Band 13 device similar to the E362 >> > this Nathan's plugin targets, but USB instead of PCI-E minicard) is as >> > follows: >> > >> > 0: AT commands >> > 1: DM >> > 2: another DM >> > 3: unknown (probably QMI; doesn't respond to $GPS_START) >> > 4/5: CDC Ether >> > >> > Odd that we have two DM ports. If Intf3 is really QMI then we should >> > make sure it's blacklisted in 'option' so we don't have to do >> > serial-related junk with it. >> >> what sort of endpoins does interface 3 have? Is the 4/5 configured as a > > FF/FF/FF, bulk in+out, no interrupt Then it certainly isn't the "QMI embedded in CDC" that we have been seeing so far. It could of course still be QMI in some other wrapping, but is that likely? >> standard CDC Ether class interface set with the appropriate CDC >> functional descriptors and class codes? I assume it's configured using >> either AT commands or DM? > > Yeah, standard CDC Ether, recognized fine by the kernel (but needs a > quirk for FLAG_WWAN). AT commands set up the connection and then DHCP > is used to obtain IP addresses. > >> I wonder... QMI could also be embedded in the CDC Ether control >> interface. But then you should see "CDC: unexpected notification 01!" >> messages from time to time from cdc_ether, assuming that the device >> sends unsolicited indications. Most (all?) QMI devices seem to do that. >> They send a QMI_CTL SYNC indication during startup at the very least. > > I'll take a look, thanks for the suggestion. The #5 CDC Data interface > does have an additional: > > ** UNRECOGNIZED: 2c ff 42 49 53 54 00 01 07 06 40 00 00 00 00 > 00 01 07 f4 01 02 08 f4 01 03 09 88 13 04 0a 10 27 05 0b 10 27 06 0c f4 > 01 07 0d f4 01 Weird. I've never actually made it through all of the CDC class specs, but I believe there shouldn't ever be any extra descriptors on the data interface, should there? And I didn't think FF was a valid descriptor type either. Vendor-specific? But how to you interpret that when you don't even know whether it describes endpoint, interface or device? Bjørn ___ networkmanager-list mailing list networkmanager-list@gnome.org http://mail.gnome.org/mailman/listinfo/networkmanager-list
Re: [MM] [PATCH 2/5] novatel: Use the ALLOWED_SINGLE_AT property. Saves 5 seconds on probing.
On Sat, 2012-05-05 at 10:41 +0200, Bjørn Mork wrote: > Dan Williams writes: > > > Port layout of the Novatel 551L (LTE Band 13 device similar to the E362 > > this Nathan's plugin targets, but USB instead of PCI-E minicard) is as > > follows: > > > > 0: AT commands > > 1: DM > > 2: another DM > > 3: unknown (probably QMI; doesn't respond to $GPS_START) > > 4/5: CDC Ether > > > > Odd that we have two DM ports. If Intf3 is really QMI then we should > > make sure it's blacklisted in 'option' so we don't have to do > > serial-related junk with it. > > what sort of endpoins does interface 3 have? Is the 4/5 configured as a FF/FF/FF, bulk in+out, no interrupt > standard CDC Ether class interface set with the appropriate CDC > functional descriptors and class codes? I assume it's configured using > either AT commands or DM? Yeah, standard CDC Ether, recognized fine by the kernel (but needs a quirk for FLAG_WWAN). AT commands set up the connection and then DHCP is used to obtain IP addresses. > I wonder... QMI could also be embedded in the CDC Ether control > interface. But then you should see "CDC: unexpected notification 01!" > messages from time to time from cdc_ether, assuming that the device > sends unsolicited indications. Most (all?) QMI devices seem to do that. > They send a QMI_CTL SYNC indication during startup at the very least. I'll take a look, thanks for the suggestion. The #5 CDC Data interface does have an additional: ** UNRECOGNIZED: 2c ff 42 49 53 54 00 01 07 06 40 00 00 00 00 00 01 07 f4 01 02 08 f4 01 03 09 88 13 04 0a 10 27 05 0b 10 27 06 0c f4 01 07 0d f4 01 Dan ___ networkmanager-list mailing list networkmanager-list@gnome.org http://mail.gnome.org/mailman/listinfo/networkmanager-list
Re: [MM] [PATCH 2/5] novatel: Use the ALLOWED_SINGLE_AT property. Saves 5 seconds on probing.
Dan Williams writes: > Port layout of the Novatel 551L (LTE Band 13 device similar to the E362 > this Nathan's plugin targets, but USB instead of PCI-E minicard) is as > follows: > > 0: AT commands > 1: DM > 2: another DM > 3: unknown (probably QMI; doesn't respond to $GPS_START) > 4/5: CDC Ether > > Odd that we have two DM ports. If Intf3 is really QMI then we should > make sure it's blacklisted in 'option' so we don't have to do > serial-related junk with it. what sort of endpoins does interface 3 have? Is the 4/5 configured as a standard CDC Ether class interface set with the appropriate CDC functional descriptors and class codes? I assume it's configured using either AT commands or DM? I wonder... QMI could also be embedded in the CDC Ether control interface. But then you should see "CDC: unexpected notification 01!" messages from time to time from cdc_ether, assuming that the device sends unsolicited indications. Most (all?) QMI devices seem to do that. They send a QMI_CTL SYNC indication during startup at the very least. Bjørn ___ networkmanager-list mailing list networkmanager-list@gnome.org http://mail.gnome.org/mailman/listinfo/networkmanager-list
Re: [MM] [PATCH 2/5] novatel: Use the ALLOWED_SINGLE_AT property. Saves 5 seconds on probing.
On Wed, 2012-05-02 at 19:16 +0200, Bjørn Mork wrote: > Nathan Williams writes: > > On Wed, May 2, 2012 at 6:11 AM, Aleksander Morgado > > wrote: > > > >> On 05/01/2012 06:07 PM, Nathan Williams wrote: > >> > Date: Thu, 22 Mar 2012 16:18:24 -0400 > >> > Subject: [PATCH 2/5] novatel: Use the ALLOWED_SINGLE_AT property. Saves 5 > >> > seconds on probing. > >> > >> Is it that the modem exposes only one AT port? Or that it exposes > >> multiple ports but only one is needed? The property was meant for the > >> former case only, not for the latter. > > > > > > With this modem only one of the four exposed serial ports is an AT port. I > > believe the remaining ones are two Qualcomm things and GPS. > > That sounds very likely. A wild guess based on similar devices is that > the four ports are AT, QCDM, NMEA and QMI. You could try writing > $GPS_START to the suspected NMEA port and see if that enables output > from the GPS. QCDM could be tested using the tests in libqcdm (included > with ModemManager). > > Testing for a QMI port is currenly non-trivial. You will have to modify > the cdc-wdm or qmi_wwan drivers to bind to the device and see if it > replies to QMI. A nice test util for someone to write (I've been > planning to, but haven't had the time and probably won't either...) > would be something using libusb to send a CDC embedded QMI message (the > subsystem version check looks like a good candidate) to a given > device/interface. Should be fairly easy to write. Port layout of the Novatel 551L (LTE Band 13 device similar to the E362 this Nathan's plugin targets, but USB instead of PCI-E minicard) is as follows: 0: AT commands 1: DM 2: another DM 3: unknown (probably QMI; doesn't respond to $GPS_START) 4/5: CDC Ether Odd that we have two DM ports. If Intf3 is really QMI then we should make sure it's blacklisted in 'option' so we don't have to do serial-related junk with it. Dan ___ networkmanager-list mailing list networkmanager-list@gnome.org http://mail.gnome.org/mailman/listinfo/networkmanager-list
Re: [MM] [PATCH 2/5] novatel: Use the ALLOWED_SINGLE_AT property. Saves 5 seconds on probing.
Aleksander Morgado writes: >> Testing for a QMI port is currenly non-trivial. You will have to modify >> the cdc-wdm or qmi_wwan drivers to bind to the device and see if it >> replies to QMI. A nice test util for someone to write (I've been >> planning to, but haven't had the time and probably won't either...) >> would be something using libusb to send a CDC embedded QMI message (the >> subsystem version check looks like a good candidate) to a given >> device/interface. Should be fairly easy to write. >> > > That check will possibly be done directly through libqmi/libqmi-glib. In > my libqmi-glib, opening a QmiDevice involves doing the subsystem version > check already. Yes, adding a libusb-based "CDC driver" backend in addition to the character device backed would be useful, at least for testing and verifying new devices. Bjørn ___ networkmanager-list mailing list networkmanager-list@gnome.org http://mail.gnome.org/mailman/listinfo/networkmanager-list
Re: [MM] [PATCH 2/5] novatel: Use the ALLOWED_SINGLE_AT property. Saves 5 seconds on probing.
> Testing for a QMI port is currenly non-trivial. You will have to modify > the cdc-wdm or qmi_wwan drivers to bind to the device and see if it > replies to QMI. A nice test util for someone to write (I've been > planning to, but haven't had the time and probably won't either...) > would be something using libusb to send a CDC embedded QMI message (the > subsystem version check looks like a good candidate) to a given > device/interface. Should be fairly easy to write. > That check will possibly be done directly through libqmi/libqmi-glib. In my libqmi-glib, opening a QmiDevice involves doing the subsystem version check already. -- Aleksander ___ networkmanager-list mailing list networkmanager-list@gnome.org http://mail.gnome.org/mailman/listinfo/networkmanager-list
Re: [MM] [PATCH 2/5] novatel: Use the ALLOWED_SINGLE_AT property. Saves 5 seconds on probing.
On 05/02/2012 07:13 PM, Nathan Williams wrote: > > 0001-novatel-Use-the-ALLOWED_SINGLE_AT-property.-Saves-5-.patch > > > From ad53cf829f42a5570e8eab46bb1ab0065110f3d8 Mon Sep 17 00:00:00 2001 > From: Nathan Williams > Date: Thu, 22 Mar 2012 16:18:24 -0400 > Subject: [PATCH] novatel: Use the ALLOWED_SINGLE_AT property. Saves 5 seconds > on probing. > > Change-Id: I0b0c2cb07781eb32ba6eb4294868ed123f57fd9f Pushed now, thanks. -- Aleksander ___ networkmanager-list mailing list networkmanager-list@gnome.org http://mail.gnome.org/mailman/listinfo/networkmanager-list
Re: [MM] [PATCH 2/5] novatel: Use the ALLOWED_SINGLE_AT property. Saves 5 seconds on probing.
Nathan Williams writes: > On Wed, May 2, 2012 at 6:11 AM, Aleksander Morgado > wrote: > >> On 05/01/2012 06:07 PM, Nathan Williams wrote: >> > Date: Thu, 22 Mar 2012 16:18:24 -0400 >> > Subject: [PATCH 2/5] novatel: Use the ALLOWED_SINGLE_AT property. Saves 5 >> > seconds on probing. >> >> Is it that the modem exposes only one AT port? Or that it exposes >> multiple ports but only one is needed? The property was meant for the >> former case only, not for the latter. > > > With this modem only one of the four exposed serial ports is an AT port. I > believe the remaining ones are two Qualcomm things and GPS. That sounds very likely. A wild guess based on similar devices is that the four ports are AT, QCDM, NMEA and QMI. You could try writing $GPS_START to the suspected NMEA port and see if that enables output from the GPS. QCDM could be tested using the tests in libqcdm (included with ModemManager). Testing for a QMI port is currenly non-trivial. You will have to modify the cdc-wdm or qmi_wwan drivers to bind to the device and see if it replies to QMI. A nice test util for someone to write (I've been planning to, but haven't had the time and probably won't either...) would be something using libusb to send a CDC embedded QMI message (the subsystem version check looks like a good candidate) to a given device/interface. Should be fairly easy to write. Bjørn ___ networkmanager-list mailing list networkmanager-list@gnome.org http://mail.gnome.org/mailman/listinfo/networkmanager-list
Re: [MM] [PATCH 2/5] novatel: Use the ALLOWED_SINGLE_AT property. Saves 5 seconds on probing.
Updated patch attached. - Nathan On Wed, May 2, 2012 at 11:25 AM, Aleksander Morgado wrote: > On 05/02/2012 04:53 PM, Nathan Williams wrote: > > On Wed, May 2, 2012 at 6:11 AM, Aleksander Morgado > > mailto:aleksan...@lanedo.com>> wrote: > > > > On 05/01/2012 06:07 PM, Nathan Williams wrote: > > > Date: Thu, 22 Mar 2012 16:18:24 -0400 > > > Subject: [PATCH 2/5] novatel: Use the ALLOWED_SINGLE_AT property. > > Saves 5 > > > seconds on probing. > > > > Is it that the modem exposes only one AT port? Or that it exposes > > multiple ports but only one is needed? The property was meant for the > > former case only, not for the latter. > > > > > > With this modem only one of the four exposed serial ports is an AT port. > > I believe the remaining ones are two Qualcomm things and GPS. > > > > Ah, good then. > > > > > > > When SINGLE_AT is set, _AT is not needed; it's one or the other. > > > > > > OK, will revise. > > > > Great, thanks. > > -- > Aleksander > 0001-novatel-Use-the-ALLOWED_SINGLE_AT-property.-Saves-5-.patch Description: Binary data ___ networkmanager-list mailing list networkmanager-list@gnome.org http://mail.gnome.org/mailman/listinfo/networkmanager-list
Re: [MM] [PATCH 2/5] novatel: Use the ALLOWED_SINGLE_AT property. Saves 5 seconds on probing.
On 05/02/2012 04:53 PM, Nathan Williams wrote: > On Wed, May 2, 2012 at 6:11 AM, Aleksander Morgado > mailto:aleksan...@lanedo.com>> wrote: > > On 05/01/2012 06:07 PM, Nathan Williams wrote: > > Date: Thu, 22 Mar 2012 16:18:24 -0400 > > Subject: [PATCH 2/5] novatel: Use the ALLOWED_SINGLE_AT property. > Saves 5 > > seconds on probing. > > Is it that the modem exposes only one AT port? Or that it exposes > multiple ports but only one is needed? The property was meant for the > former case only, not for the latter. > > > With this modem only one of the four exposed serial ports is an AT port. > I believe the remaining ones are two Qualcomm things and GPS. > Ah, good then. > > > When SINGLE_AT is set, _AT is not needed; it's one or the other. > > > OK, will revise. > Great, thanks. -- Aleksander ___ networkmanager-list mailing list networkmanager-list@gnome.org http://mail.gnome.org/mailman/listinfo/networkmanager-list
Re: [MM] [PATCH 2/5] novatel: Use the ALLOWED_SINGLE_AT property. Saves 5 seconds on probing.
On Wed, May 2, 2012 at 6:11 AM, Aleksander Morgado wrote: > On 05/01/2012 06:07 PM, Nathan Williams wrote: > > Date: Thu, 22 Mar 2012 16:18:24 -0400 > > Subject: [PATCH 2/5] novatel: Use the ALLOWED_SINGLE_AT property. Saves 5 > > seconds on probing. > > Is it that the modem exposes only one AT port? Or that it exposes > multiple ports but only one is needed? The property was meant for the > former case only, not for the latter. With this modem only one of the four exposed serial ports is an AT port. I believe the remaining ones are two Qualcomm things and GPS. > When SINGLE_AT is set, _AT is not needed; it's one or the other. > OK, will revise. - Nathan ___ networkmanager-list mailing list networkmanager-list@gnome.org http://mail.gnome.org/mailman/listinfo/networkmanager-list
Re: [MM] [PATCH 2/5] novatel: Use the ALLOWED_SINGLE_AT property. Saves 5 seconds on probing.
On 05/01/2012 06:07 PM, Nathan Williams wrote: > Date: Thu, 22 Mar 2012 16:18:24 -0400 > Subject: [PATCH 2/5] novatel: Use the ALLOWED_SINGLE_AT property. Saves 5 > seconds on probing. Is it that the modem exposes only one AT port? Or that it exposes multiple ports but only one is needed? The property was meant for the former case only, not for the latter. > > Change-Id: I0b0c2cb07781eb32ba6eb4294868ed123f57fd9f > --- > plugins/novatel/mm-plugin-novatel.c |1 + > 1 files changed, 1 insertions(+), 0 deletions(-) > > diff --git a/plugins/novatel/mm-plugin-novatel.c > b/plugins/novatel/mm-plugin-novatel.c > index 10fa6a6..ccec89c 100644 > --- a/plugins/novatel/mm-plugin-novatel.c > +++ b/plugins/novatel/mm-plugin-novatel.c > @@ -94,6 +94,7 @@ mm_plugin_create (void) >MM_PLUGIN_BASE_ALLOWED_SUBSYSTEMS, subsystems, >MM_PLUGIN_BASE_ALLOWED_PRODUCT_IDS, products, >MM_PLUGIN_BASE_ALLOWED_AT, TRUE, > + MM_PLUGIN_BASE_ALLOWED_SINGLE_AT, TRUE, When SINGLE_AT is set, _AT is not needed; it's one or the other. >NULL)); > } > -- Aleksander ___ networkmanager-list mailing list networkmanager-list@gnome.org http://mail.gnome.org/mailman/listinfo/networkmanager-list
[MM] [PATCH 2/5] novatel: Use the ALLOWED_SINGLE_AT property. Saves 5 seconds on probing.
0002-novatel-Use-the-ALLOWED_SINGLE_AT-property.-Saves-5-.patch Description: Binary data ___ networkmanager-list mailing list networkmanager-list@gnome.org http://mail.gnome.org/mailman/listinfo/networkmanager-list