Mercurial > ecos-v3_0-branch
comparison packages/io/serial/current/src/arm/aeb_serial.c @ 6:d376b777e2ce ecos-sw-1999-05-14
Merge from eCos master repository on 1999-05-14-19:27:43-BST
| author | jlarmour |
|---|---|
| date | Fri, 14 May 1999 12:20:00 +0000 |
| parents | 443894e2e912 |
| children | 7253dcc42a09 |
comparison
equal
deleted
inserted
replaced
| 5:4e8259f41183 | 6:d376b777e2ce |
|---|---|
| 304 { | 304 { |
| 305 serial_channel *chan = (serial_channel *)data; | 305 serial_channel *chan = (serial_channel *)data; |
| 306 aeb_serial_info *aeb_chan = (aeb_serial_info *)chan->dev_priv; | 306 aeb_serial_info *aeb_chan = (aeb_serial_info *)chan->dev_priv; |
| 307 volatile struct serial_port *port = (volatile struct serial_port *)aeb_chan->base; | 307 volatile struct serial_port *port = (volatile struct serial_port *)aeb_chan->base; |
| 308 unsigned char isr; | 308 unsigned char isr; |
| 309 isr = port->isr; | 309 isr = port->isr & 0x0E; |
| 310 if ((isr & 0x0E) == ISR_Tx) { | 310 if (isr == ISR_Tx) { |
| 311 (chan->callbacks->xmt_char)(chan); | 311 (chan->callbacks->xmt_char)(chan); |
| 312 } else { | 312 } else if (isr == ISR_Rx) { |
| 313 // Assume receive interrupt | |
| 314 (chan->callbacks->rcv_char)(chan, port->rhr); | 313 (chan->callbacks->rcv_char)(chan, port->rhr); |
| 315 } | 314 } |
| 316 cyg_drv_interrupt_unmask(aeb_chan->int_num); | 315 cyg_drv_interrupt_unmask(aeb_chan->int_num); |
| 317 } | 316 } |
| 318 #endif | 317 #endif |
