Re: Slow mobile broadband detection
- From: Dan Williams <dcbw redhat com>
- To: Sérgio Basto <sergio serjux com>
- Cc: networkmanager-list gnome org
- Subject: Re: Slow mobile broadband detection
- Date: Sat, 02 Jul 2011 16:38:01 -0500
On Sat, 2011-07-02 at 14:10 +0100, Sérgio Basto wrote:
> On Thu, 2011-06-30 at 12:21 -0500, Dan Williams wrote:
> > On Sun, 2011-06-19 at 15:48 +0200, D. Guandalino wrote:
> > > Hi, any news?
> >
> > If you're able to test a kernel patch, try this for the option driver.
> > If that works for you I'll submit it upstream.
> >
> > diff --git a/drivers/usb/serial/option.c b/drivers/usb/serial/option.c
> > index 4e7d3b4..bcd6e90 100644
> > --- a/drivers/usb/serial/option.c
> > +++ b/drivers/usb/serial/option.c
> > @@ -441,6 +441,13 @@ static const struct option_blacklist_info alcatel_x200_blacklist = {
> > .reason = OPTION_BLACKLIST_SENDSETUP
> > };
> >
> > +static const u8 zte_0037_no_sendsetup[] = { 0, 1 };
> > +static const struct option_blacklist_info zte_0037_blacklist = {
> > + .infolen = ARRAY_SIZE(zte_0037_no_sendsetup),
> > + .ifaceinfo = zte_0037_no_sendsetup,
> > + .reason = OPTION_BLACKLIST_SENDSETUP
> > +};
> > +
>
> Hi,
> I try this on my MF622,
> Looking the code, this function do the same of four_g_w14_blacklist ?
Yes, basically. The only possible difference is the specific USB
interfaces that cause the issue. On all the devices we've blacklisted
so far, that's only interfaces 0 and 1. But that's not necessarily the
case for all devices out there.
So there's possibility for simplifying the option driver's blacklist
quite a bit; we should really just have a few set blacklists that aren't
device specific, but are USB port specific. But let me know if this
works for you and then we can upstream this.
Dan
> static const u8 four_g_w14_no_sendsetup[] = { 0, 1 };
> static const struct option_blacklist_info four_g_w14_blacklist = {
> .infolen = ARRAY_SIZE(four_g_w14_no_sendsetup),
> .ifaceinfo = four_g_w14_no_sendsetup,
> .reason = OPTION_BLACKLIST_SENDSETUP
> };
>
> so, I do this patch and compile fedora kernel 2.6.38.6-27 with the
> follow patch , but I don't got any improvement on speed detection:
>
> --- a/drivers/usb/serial/option.c.old 2011-07-02 12:29:34.033264728 +0100
> +++ b/drivers/usb/serial/option.c 2011-07-02 12:39:06.229743172 +0100
> @@ -622,7 +622,8 @@
> { USB_DEVICE(CMOTECH_VENDOR_ID, CMOTECH_PRODUCT_6008) },
> { USB_DEVICE(TELIT_VENDOR_ID, TELIT_PRODUCT_UC864E) },
> { USB_DEVICE(TELIT_VENDOR_ID, TELIT_PRODUCT_UC864G) },
> - { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, ZTE_PRODUCT_MF622, 0xff, 0xff, 0xff) }, /* ZTE WCDMA products */
> + { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, ZTE_PRODUCT_MF622, 0xff, 0xff, 0xff),
> + .driver_info = (kernel_ulong_t)&four_g_w14_blacklist }, /* ZTE WCDMA products */
> { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x0002, 0xff, 0xff, 0xff) },
> { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x0003, 0xff, 0xff, 0xff) },
> { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x0004, 0xff, 0xff, 0xff) },
> @@ -656,12 +657,13 @@
> { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x0028, 0xff, 0xff, 0xff) },
> { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x0029, 0xff, 0xff, 0xff) },
> { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x0030, 0xff, 0xff, 0xff) },
> - { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, ZTE_PRODUCT_MF626, 0xff,
> - 0xff, 0xff), .driver_info = (kernel_ulong_t)&four_g_w14_blacklist },
> + { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, ZTE_PRODUCT_MF626, 0xff, 0xff, 0xff),
> + .driver_info = (kernel_ulong_t)&four_g_w14_blacklist },
> { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x0032, 0xff, 0xff, 0xff) },
> { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x0033, 0xff, 0xff, 0xff) },
> { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x0034, 0xff, 0xff, 0xff) },
> - { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x0037, 0xff, 0xff, 0xff) },
> + { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x0037, 0xff, 0xff, 0xff),
> + .driver_info = (kernel_ulong_t)&four_g_w14_blacklist },
> { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x0038, 0xff, 0xff, 0xff) },
> { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x0039, 0xff, 0xff, 0xff) },
> { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x0040, 0xff, 0xff, 0xff) }
>
> > static const struct usb_device_id option_ids[] = {
> > { USB_DEVICE(OPTION_VENDOR_ID, OPTION_PRODUCT_COLT) },
> > { USB_DEVICE(OPTION_VENDOR_ID, OPTION_PRODUCT_RICOLA) },
> > @@ -671,7 +678,9 @@ static const struct usb_device_id option_ids[] = {
> > { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x0032, 0xff, 0xff, 0xff) },
> > { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x0033, 0xff, 0xff, 0xff) },
> > { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x0034, 0xff, 0xff, 0xff) },
> > - { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x0037, 0xff, 0xff, 0xff) },
> > + { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x0037, 0xff, 0xff, 0xff),
> > + .driver_info = (kernel_ulong_t)&zte_0037_blacklist
> > + },
> > { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x0038, 0xff, 0xff, 0xff) },
> > { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x0039, 0xff, 0xff, 0xff) },
> > { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x0040, 0xff, 0xff, 0xff) },
> >
> >
>
> Best regards,
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]