This is the mail archive of the ecos-discuss@sources.redhat.com mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: Serial FIFO problem (i386 only)



Hi,
	the RT_14 means the FIFO will interrupt after 14 chars, *or* if a
rx timeout occurs on the FIFO (which happens if it doesn't
receive a character within a specified time frame
.... check the pc_serial (out of date I
thought PC use ser_165xx or something similiar), that it process a FIFO rx
timeout correctly..

Dave.

On Tue, 21 Nov 2000, Fabrice Gautier wrote:

> Hi,
> 
> I think other people have experienced some problem with serial, but I don't
> remember if anyone has reported something like that.
> 
> I've configured eCos with a serial driver for com1 (aka /dev/ser0). But i
> didn't get any interrutps. When the serial port was used by RedBoot i get
> the interrupt (ctrl-C worked).
> 
> The IO chip in the PC board seems to be a Winbond w83877F. This is detected
> as a 16550a, which is what the doc at winbond.com says it is.
> 
> The faulty code is here (pc_serial.c:231):
> 
> if (port->deviceType == s16550a)
> 	pc_outb(port->base + FCR, FCR_FE | FCR_RFR | FCR_TFR | FCR_RT14);
> 
> The bad thing is the FCR_RT14: this configure the UART to trigger an
> interrupt only when 14 bytes are on. But I only want to read 1 byte. 
> 
> changing the whole line to :
> 	pc_outb(port->base + FCR, 0);
> or simply replacing FCR_RT14 by FCR_RT1 seems to works but not very well.
> 
> The problem now is that it seems there is always one char keept in some
> buffer. I don't get the actual char before sending another char.
> 
> 
> Thanks
> 

-- 
      David Airlie, Software Engineer, Parthus Technologies plc.,
       Mary Rosse Centre, National Tech Park, Limerick, Ireland.
   t: +353-61-508116 / f: +353-61-508101 / David.Airlie@parthus.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]