Hi Brian,

Thanks for sharing the patch. We tested this on 2.6.32 kernel on DM355 device 
and it worked fine however we are yet to get this working with 2.6.30 kernel.  

One of the things that we are trying to investigate is why the transmit FIFO 
empty interrupts are not generated. If you have more visibility into this, I 
would appreciate any details. Considering we see this issue across number of 
devices OMAP-L137, DM6446 and DM355, it points to a software issue rather than 
hardware one but needs to be confirmed. 

 
Prateek

-----Original Message-----
From: [email protected] 
[mailto:[email protected]] On Behalf Of 
Nick Thompson
Sent: Monday, February 15, 2010 5:59 AM
To: Brian Murphy
Cc: [email protected]
Subject: Re: DM3xx: UART transmit delays

On 11/02/10 09:58, Brian Murphy wrote:
> Hi Folks,
> We have been working with L137 and there is an issue where the serial
> driver handles
> the UART  in a very bad way. This may be the same issue as described
> in the other
> two mails on this thread.
> The issue is that the serial driver 8250.c expects the uart to
> generate a fifo empty interrupt
> if the FIFO is empty and interrupts are enabled. The UART in the L137
> only generates a FIFO
> empty interrupt the first time. The serial driver handles this
> situation by starting a timer which
> times out after 200ms when interrupts are enabled and only then begins
> to transmit.
> I have rewritten the interrupt handling so the driver maintains a flag
> which tells whether the UART
> is currently transmitting or not. If not then we begin filling the TX
> fifo immediately (we do not
> wait for an interrupt which never comes). This fixes the transmit
> latency issue for us.
> 
> I have attached the patch. It is against the linux-davinci git at
> kernel.org as of friday last week.
> 
> I have sent the patch to the linux-serial list with no response.
> 
> Could you who have problems with serial performance test the patch? I
> can try to send it
> again to linux-serial if I get good feedback from you.
> 
> /Brian

Hi Brian,

I know you developed this on the OMAP-L137 and tested it yourself, but
I can confirm I get the same results here on the same device. (I
had to back port it to MVL5 first.)

I spent quite a bit of time studying the patch and I would be happy to
endorse it (though I'm sure that won't count for anything). It has
a few minor style problems, but the approach looks good to me.

I think it will need testing on many more platforms before it is accepted
though :(

Thanks for sharing. The product I am working on requires efficient serial
ports and this patch has saved me a bunch of time.

Nick.
_______________________________________________
Davinci-linux-open-source mailing list
[email protected]
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source
_______________________________________________
Davinci-linux-open-source mailing list
[email protected]
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source

Reply via email to