This is the mail archive of the
ecos-patches@sources.redhat.com
mailing list for the eCos project.
E7T serial driver
- From: Roland Caßebohm <roland dot cassebohm at visionsystems dot de>
- To: ecos-patches at ecos dot sourceware dot org
- Date: Wed, 11 Feb 2004 18:23:40 +0100
- Subject: E7T serial driver
Hello,
It seems that the UART does not generate an interrupt befor the
first time a character was send.
I have changed e7t_serial_start_xmit() to first try to send
characters.
Bet regards,
Roland
--
___________________________________________________
VS Vision Systems GmbH, Industrial Image Processing
Dipl.-Ing. Roland Caßebohm
Aspelohe 27A, D-22848 Norderstedt, Germany
http://www.visionsystems.de
___________________________________________________
Index: devs/serial/arm/e7t//current/ChangeLog
===================================================================
RCS file: /home/cassebohm/net/USERS/CVSROOT/VSprojects/ecos/packages/devs/serial/arm/e7t/current/ChangeLog,v
retrieving revision 1.1.1.1
diff -u -5 -p -r1.1.1.1 ChangeLog
--- devs/serial/arm/e7t//current/ChangeLog 29 Sep 2003 15:15:47 -0000 1.1.1.1
+++ devs/serial/arm/e7t//current/ChangeLog 11 Feb 2004 17:17:52 -0000
@@ -1,5 +1,11 @@
+2004-02-11 Roland Caßebohm <roland.cassebohm@visionsystem.de>
+
+ * src/e7t_serial.c: The UART doesn't generate an interrupt befor the
+ first time a character was send. Changed e7t_serial_start_xmit()
+ to first try to send characters.
+
2003-02-24 Jonathan Larmour <jifl@eCosCentric.com>
* cdl/ser_arm_e7t.cdl: Remove irrelevant doc link.
2001-10-19 Lars Lindqvist <Lars.Lindqvist@combitechsystems.com>
Index: devs/serial/arm/e7t//current/src/e7t_serial.c
===================================================================
RCS file: /home/cassebohm/net/USERS/CVSROOT/VSprojects/ecos/packages/devs/serial/arm/e7t/current/src/e7t_serial.c,v
retrieving revision 1.1.1.1
diff -u -5 -p -r1.1.1.1 e7t_serial.c
--- devs/serial/arm/e7t//current/src/e7t_serial.c 29 Sep 2003 15:15:47 -0000 1.1.1.1
+++ devs/serial/arm/e7t//current/src/e7t_serial.c 11 Feb 2004 17:11:32 -0000
@@ -310,11 +310,14 @@ e7t_serial_set_config(serial_channel *ch
static void
e7t_serial_start_xmit(serial_channel *chan)
{
e7t_serial_info *e7t_chan = (e7t_serial_info *)chan->dev_priv;
e7t_chan->tx_enabled = true;
- cyg_drv_interrupt_unmask(e7t_chan->tx_int_num);
+ (chan->callbacks->xmt_char)(chan);
+ if (e7t_chan->tx_enabled) {
+ cyg_drv_interrupt_unmask(e7t_chan->tx_int_num);
+ }
}
// Disable the transmitter on the device
static void
e7t_serial_stop_xmit(serial_channel *chan)