git://scm.lunaixsky.com
/
lunaix-os.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
rework external irq system, introduce hierarchical irq
[lunaix-os.git]
/
lunaix-os
/
hal
/
char
/
uart
/
16x50_base.c
diff --git
a/lunaix-os/hal/char/uart/16x50_base.c
b/lunaix-os/hal/char/uart/16x50_base.c
index 8b3930f29779973071d45facf65f4a56ece92f76..5b14445521c5c9f92345ee0caea9fe960da37998 100644
(file)
--- a/
lunaix-os/hal/char/uart/16x50_base.c
+++ b/
lunaix-os/hal/char/uart/16x50_base.c
@@
-103,13
+103,13
@@
uart_general_exec_cmd(struct serial_dev* sdev, u32_t req, va_list args)
}
void
}
void
-uart_handle_irq_overlap(i
nt iv
, struct llist_header* ports)
+uart_handle_irq_overlap(i
rq_t irq
, struct llist_header* ports)
{
struct uart16550 *pos, *n;
llist_for_each(pos, n, ports, local_ports)
{
int is = uart_intr_identify(pos);
{
struct uart16550 *pos, *n;
llist_for_each(pos, n, ports, local_ports)
{
int is = uart_intr_identify(pos);
- if (i
v == pos->iv
&& (is == UART_CHR_TIMEOUT)) {
+ if (i
rq == pos->irq
&& (is == UART_CHR_TIMEOUT)) {
goto done;
}
}
goto done;
}
}
@@
-117,11
+117,11
@@
uart_handle_irq_overlap(int iv, struct llist_header* ports)
return;
done:
return;
done:
- uart_handle_irq(i
v
, pos);
+ uart_handle_irq(i
rq
, pos);
}
void
}
void
-uart_handle_irq(i
nt iv
, struct uart16550 *uart)
+uart_handle_irq(i
rq_t irq
, struct uart16550 *uart)
{
char tmpbuf[32];
char recv;
{
char tmpbuf[32];
char recv;