[ECOS] Re:IXP425 UART Problem

Nick Garnett nickg@ecoscentric.com
Wed Nov 29 11:23:00 GMT 2006


"Jamaluddin Khan" <jamaluddin.khan@aftek.com> writes:

> > Hi,
> > 
> > We are running redboot on IXP 425 platform. The IXP425 has a known bug
> > that when the UART break indicator (fourth bit of LSR) is de-asserted,
> > it is possible for the UART to detect a start bit and receive an
> > incorrect 0xFF byte. And this bug is not fixed.  
> > 
> > So when this incorrect 0xFF byte received the bootloader goes in
> > blocking read mon_read_char() and the bootloader gets stuck up there. 
> > 
> > Does anybody have any workaround for this? 
> 
> >You could try fixing it in the driver: after detecting a break throw
> >away any 0xFF bytes received.
> 
> >It may also be worthwhile working out why you are getting breaks in
> >the first place.
> 
> 
> >-- 
> >Nick Garnett 
> 
> 
> Hi,
> 	The bug is when the UART break indicator (fourth bit of LSR) is
> de-asserted (made zero),it is possible for the UART to detect a start
> bit and receive an incorrect 0xFF byte.
> 	There is no problem when the break indicator is one. The problem
> could when the UART break indicator(fourth bit of LSR)is zero.The Break
> indicator is reset when the processor reads the Line Status
> Register(LSR).  

Presumably for this bit to transition from one to zero it must have
transitioned from zero to one at some point. That transition was
presumably as a result of a break condition which you can detect, by
inspecting this bit. At this point you can presumably look for 0xFF
bytes and discard them.


-- 
Nick Garnett                                     eCos Kernel Architect
http://www.ecoscentric.com                The eCos and RedBoot experts


-- 
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss



More information about the Ecos-discuss mailing list