Re: IPWireless serial modem has bandwidth limited to 56 kB/s

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Greg,
yes, this patch fixed it. Now I get over 100 kB/s.

Thank you!

Best Regards
Michal H.

2011/7/8 Greg KH <greg@xxxxxxxxx>:
> On Fri, Jul 08, 2011 at 03:28:00PM +0200, Michal Hybner wrote:
>> Hi all,
>> I am connected to internet with IPWireless modem (it's using UMTS-TDD
>> technology) using 1Mb/s tariff. But on Linux, its bandwidth never gets
>> over 56 kB/s. I tried it on Windows and it works on full speed,
>> sometimes even over 110 kB/s. I searched a lot about this issue
>> because I am using Linux 99% of time. I found some posts aged approx.
>> 5 years ago, that some people had this issue with 3G modems and it was
>> due to low buffer size in 'usb-serial' driver which wasn't meant for
>> those speed. As workaround was often recommended some dirty hack to
>> increase buffer size by patching usb-serial or they advise to use
>> 'option' driver. But 'option' didn't work for me - I used the 'echo
>> 0bc3 0001 > /sys/.../new_id' thing and it didn't even connect. I think
>> that 'option' driver is really for classic 3G FDD modems, but not TDD.
>> I had opportunity to try it on 5 kernel versions - from 2.6.26 to
>> 3.0.0-rc5 and it's always the same.
>>
>> Any advices how to solve this? If the bottleneck is really the buffer
>> size, isn't it possible to set it somehow in the 'ipw' driver? Maybe
>> it is simple to find, but I can't code :-(. Few days ago I found this
>> patch[1] - maybe something similar could be done for 'ipw' driver too?
>> 'lsusb -v' and 'lspci -v' attached.
>
> Yes, a patch like that one should help out a lot here, are you able to
> test patches?
>
> If so, can you try the one below and let me know if it helps you out or
> not?
>
> thanks,
>
> greg k-h
>
> diff --git a/drivers/usb/serial/ipw.c b/drivers/usb/serial/ipw.c
> index ca77e88..eaeb450 100644
> --- a/drivers/usb/serial/ipw.c
> +++ b/drivers/usb/serial/ipw.c
> @@ -297,6 +297,8 @@ static struct usb_serial_driver ipw_device = {
>        .usb_driver =           &usb_ipw_driver,
>        .id_table =             usb_ipw_ids,
>        .num_ports =            1,
> +       .bulk_in_size =         256,
> +       .bulk_out_size =        256,
>        .open =                 ipw_open,
>        .close =                ipw_close,
>        .dtr_rts =              ipw_dtr_rts,
>
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux