Re: USB - Generic Serial device : Unable to read more than 4095 bytes

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

 



On 08/04/2015 10:00 PM, arun k wrote:
> I enabled software flow control like below
> 
> tty.c_iflag |= (IXON | IXOFF | IXANY);

Ok, but does the sending device know how to process in-band software flow control
and is it set up to respond properly?

Also, I doubt software flow control is going to work @ 4Mbaud line rate.
If you're stuck using software flow control, start with a 115kbaud line rate
and see if that fixes your data loss problem.

Regards,
Peter Hurley


> On Wed, Aug 5, 2015 at 12:59 AM, Peter Hurley <peter@xxxxxxxxxxxxxxxxxx> wrote:
>> On 08/03/2015 10:47 PM, arun k wrote:
>>> Thank you for the reply
>>>
>>>>> The tty layer is limiting you, just keep reading in a loop until you
>>>>> run out of data, you should not ever expect to read a specific number of
>>>>> bytes from a tty device at a time, the read call will tell you the
>>>>> number that was read properly.
>>>
>>> I tried this method but in my case I found data loss. By changing any buffer size modification in driver side , can we fix this issue ?
>>
>> The data loss is probably occurring because you have all flow control disabled
>> and the line speed is too fast for no flow control.
>>
>> Regards,
>> Peter Hurley
>>
>>>>> Please don't use the "generic" driver, it's slow and not the best to
>>>>> use
>>>
>>> Could you tell me is generic driver is suitable for my application ( My usb device sending data at a rate of 409600 bytes/sec) , ?
>>> or do you have any other suggestion for me ?
>>>
>>> My Linux kernel  version is 3.4.35
>>>
>>> Regards,
>>> Arun
>>>
>>> On Tue, Aug 4, 2015 at 1:13 AM, Greg KH <gregkh@xxxxxxxxxxxxxxxxxxx <mailto:gregkh@xxxxxxxxxxxxxxxxxxx>> wrote:
>>>
>>>     On Mon, Aug 03, 2015 at 04:44:07PM +0900, arun k wrote:
>>>     > Hi ,
>>>     >
>>>     > I have a trouble with using usb serial generic device.
>>>     >  I am using USB - Generic Serial driver for communicating with my usb
>>>     > device and my embedded device.
>>>
>>>     Please don't use the "generic" driver, it's slow and not the best to
>>>     use.
>>>
>>>     > My usb device sending data at a rate of 409600 bytes/sec, and in host
>>>     > side application I tried to read 16384 bytes in one read. But the read
>>>     > size returning is always  4095
>>>
>>>     The tty layer is limiting you, just keep reading in a loop until you
>>>     run out of data, you should not ever expect to read a specific number of
>>>     bytes from a tty device at a time, the read call will tell you the
>>>     number that was read properly.
>>>
>>>     thanks,
>>>
>>>     greg k-h
>>>
>>>
>>

--
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