git.ucc.asn.au
/
tpg
/
acess2.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Terminal - Fix forgotten break after handling of \e[K
[tpg/acess2.git]
/
UDI
/
drivers
/
uart_16c550
/
uart16c550_common.h
diff --git
a/UDI/drivers/uart_16c550/uart16c550_common.h
b/UDI/drivers/uart_16c550/uart16c550_common.h
index
1c70277
..
a8a62c2
100644
(file)
--- a/
UDI/drivers/uart_16c550/uart16c550_common.h
+++ b/
UDI/drivers/uart_16c550/uart16c550_common.h
@@
-11,16
+11,23
@@
enum {
UART_CB_BUS_BIND = 1,
UART_CB_INTR,
UART_CB_INTR_EVENT,
UART_CB_BUS_BIND = 1,
UART_CB_INTR,
UART_CB_INTR_EVENT,
+ UART_CB_GIO_EVENT,
};
enum {
PIO_RESET,
PIO_TX,
};
enum {
PIO_RESET,
PIO_TX,
- PIO_
RX
,
+ PIO_
INTR
,
N_PIO
};
N_PIO
};
+#define NUM_INTR_CBS 2
+#define INTR_CB_BUF_SIZE 16 // 16550 has a 16-byte fifo
+#define MAX_RX_BUFFER_SIZE 32
+
typedef struct {
typedef struct {
+ udi_init_context_t init_context;
+
udi_cb_t *active_cb;
struct {
udi_index_t pio_index;
udi_cb_t *active_cb;
struct {
udi_index_t pio_index;
@@
-28,7
+35,12
@@
typedef struct {
udi_pio_handle_t pio_handles[N_PIO];
udi_channel_t interrupt_channel;
udi_pio_handle_t pio_handles[N_PIO];
udi_channel_t interrupt_channel;
+
udi_buf_t *rx_buffer;
udi_buf_t *rx_buffer;
+
+ udi_boolean_t event_cb_used;
+ udi_boolean_t event_pending;
+ udi_gio_event_cb_t *event_cb;
} rdata_t;
// === MACROS ===
} rdata_t;
// === MACROS ===
UCC
git Repository :: git.ucc.asn.au