[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <502CF2A0.8080109@c-s.fr>
Date: Thu, 16 Aug 2012 15:16:16 +0200
From: leroy christophe <christophe.leroy@....fr>
To: Alan Cox <alan@...rguk.ukuu.org.uk>
CC: Alan Cox <alan@...ux.intel.com>,
Vitaly Bordug <vitb@...nel.crashing.org>,
Marcelo Tosatti <marcelo@...ck.org>,
linux-kernel@...r.kernel.org, linux-serial@...r.kernel.org,
linuxppc-dev@...ts.ozlabs.org
Subject: Re: [PATCH] Powerpc 8xx CPM_UART delay in receive
Le 14/08/2012 16:52, Alan Cox a écrit :
> On Tue, 14 Aug 2012 16:26:28 +0200
> Christophe Leroy <christophe.leroy@....fr> wrote:
>
>> Hello,
>>
>> I'm not sure who to address this Patch to either
>>
>> It fixes a delay issue with CPM UART driver on Powerpc MPC8xx.
>> The problem is that with the actual code, the driver waits 32 IDLE patterns before returning the received data to the upper level. It means for instance about 1 second at 300 bauds.
>> This fix limits to one byte the waiting period.
> Take a look how the 8250 does it - I think you want to set the value
> based upon the data rate. Your patch will break it for everyone doing
> high seed I/O.
>
> Alan
>
I'm not sure I understand what you mean. As far as I can see 8250/16550
is working a bit different, as it is based on a fifo and triggers an
interrupt as soon as a given number of bytes is received. I also see
that in case this amount is not reached, there is a receive-timeout
which goes on after no byte is received for a duration of more than 4 bytes.
The PowerPC CPM is working differently. It doesn't use a fifo but
buffers. Buffers are handed to the microprocessor only when they are
full or after a timeout period which is adjustable. In the driver, the
buffers are configured with a size of 32 bytes. And the timeout is set
to the size of the buffer. That is this timeout that I'm reducing to 1
byte in my proposed patch. I can't see what it would break for high
speed I/O.
Christophe
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists