lkml.org 
[lkml]   [2014]   [Feb]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH V2] serial/uart: Add tunable RX interrupt trigger I/F of FIFO buffers
Hi Alan,

Thank you for your reply.

(2014/02/18 0:12), One Thousand Gnomes wrote:
>> According to HW specification of serial UART devices, RX interrupt trigger
>> can be changed, but the trigger is hard-coded. For example, RX interrupt trigger
>> in 16550A can be set to 1, 4, 8, or 14 bytes for HW, but current driver sets
>> the trigger to only 8bytes.
>>
>> This patch makes a 16550A device change RX interrupt trigger from userland.
>
> We probably need to be much smarter about how we set this as lots of non
> 16550A type devices have a tunable trigger.
>
> We tune it dynamically based upon baud rate for many platforms, and we
> turn it on and off according to low latency settings. In other words we
> can't just have an ioctl poking values about in parallel and without any
> locking.

You're right. If a user sets low_latency using ioctl() on an 8250
device, serial8250_clear_fifos() initializing FCR will be executed.
So, my approach which does not get lock is inappropriate.

> For the API IMHO this really belongs in sysfs IMHO. That does mean we need
> to turn the existing sysfs API read/write by adding a few set methods not
> just get ones in drivers/tty/serial/ but it would be a lot cleaner and
> the uart_set_info path does the correct stopping and restarting as well
> as locking for the fifo size change.

As you say, sysfs is more convenient than ioctl for users. Moreover,
using uart_set_info() solves the competent problem. So, I'll
implement this feature in sysfs.

Thank you,
Yoshihiro YUNOMAE

--
Yoshihiro YUNOMAE
Software Platform Research Dept. Linux Technology Center
Hitachi, Ltd., Yokohama Research Laboratory
E-mail: yoshihiro.yunomae.ez@hitachi.com




\
 
 \ /
  Last update: 2014-02-18 06:01    [W:0.066 / U:0.024 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site