diff options
| author | tsutsui <tsutsui@NetBSD.org> | 2013-12-31 14:24:09 +0000 |
|---|---|---|
| committer | tsutsui <tsutsui@NetBSD.org> | 2013-12-31 14:24:09 +0000 |
| commit | 3538b46d723edee30c377b27e27a56cf0fec3d87 (patch) | |
| tree | 1fe3ea2e06592dc5f1c7013809172eef8cd4cca7 /sys/dev | |
| parent | 065b4ca8e45c528ad132fc3a6a5df30ce9f1a0b3 (diff) | |
Use softint(9) properly to process TX/RX data between tty(4) layer.
It could cause possible locking issue to call tty(4) layer functions
from IPL_SERIAL interrupt handlers.
Changes details (mostly similar to com(4) and z8530tty(4)):
- allocate RX buffer and put data and status into it in the interrupt handler
- call t_linesw->l_rint from the software interrupt handler
- set the only first byte in siottystart() and use t_outq buffer to send
multiple TX data
- call the next t_linesw->l_start on TX complete in the software interrupt
handler
Also put more changes:
- handle cnmagic(9) properly (now entering ddb(4) by console BREAK works)
- allocate tty in the attach function as other drivers rather than first open
- use proper variable types
Diffstat (limited to 'sys/dev')
0 files changed, 0 insertions, 0 deletions
