Rev |
Log message |
Author |
Age |
Path |
1153 |
When multiple interrupts were pending, e.g. TX buffer empty and RX
available, reading the UART's IIR register could potentially clear a
TX interrupt before it had been sent to the processor, thus dropping
the interrupt permanently.
Fix tested w/ both eCos and uclinux. |
sfurman |
7796d 12h |
/or1k/tags/nog_patch_61/or1ksim/peripheral/16450.c |
1145 |
1) Fix trivial bug w/ transmitter empty interrupts that I introduced in the
last check-in.
2) Improve printed output from debugging-only uart_status() routine. |
sfurman |
7797d 05h |
/or1k/tags/nog_patch_61/or1ksim/peripheral/16450.c |
1143 |
Make UART transmitter-empty interrupts match both 16450 and 16550 behavior. |
sfurman |
7800d 02h |
/or1k/tags/nog_patch_61/or1ksim/peripheral/16450.c |
1116 |
There was a bug in the simulator's UART implementation that caused the
UART's LSR register to become corrupted. This was due to an
assumption that 'char' is an unsigned type, but that is not true on
all platforms.
When the char type is signed and a character is read in the range
0x80-0xff, the high bit is sign-extended into the upper bits of an
entry in the receive FIFO. When the character reaches the head of the
FIFO, the upper bits of the FIFO entry are OR'ed into the LSR, causing
the LSR to be set to 0xFF.
A simple cast fixes the problem. |
sfurman |
7840d 10h |
/or1k/tags/nog_patch_61/or1ksim/peripheral/16450.c |
1073 |
channels support |
rprescott |
7965d 14h |
/or1k/tags/nog_patch_61/or1ksim/peripheral/16450.c |
997 |
PRINTF should be used instead of printf; command redirection repaired |
markom |
8028d 23h |
/or1k/tags/nog_patch_61/or1ksim/peripheral/16450.c |
970 |
Testbench is now running on ORP architecture platform. |
simons |
8036d 10h |
/or1k/tags/nog_patch_61/or1ksim/peripheral/16450.c |
884 |
code cleaning - a lot of global variables moved to runtime struct |
markom |
8072d 22h |
/or1k/tags/nog_patch_61/or1ksim/peripheral/16450.c |
821 |
ugly bug with duplicate redefined i removed |
markom |
8158d 18h |
/or1k/tags/nog_patch_61/or1ksim/peripheral/16450.c |
806 |
uart now partially uses scheduler |
markom |
8164d 00h |
/or1k/tags/nog_patch_61/or1ksim/peripheral/16450.c |
805 |
kbd, fb, vga devices now uses scheduler |
markom |
8164d 01h |
/or1k/tags/nog_patch_61/or1ksim/peripheral/16450.c |
713 |
lot of small minor improvements: code documented, cleaned; runs at about same speed when not actually logging, but exe_log is enabled; raw_stats now run only with simple execution - enable RAW_USAGE_STATS macro |
markom |
8200d 23h |
/or1k/tags/nog_patch_61/or1ksim/peripheral/16450.c |
549 |
enabled parameters removed from devices, which also have number of devices; command line --output-cfg parameter added |
markom |
8254d 19h |
/or1k/tags/nog_patch_61/or1ksim/peripheral/16450.c |
530 |
THRI interrupt fixed. |
simons |
8257d 12h |
/or1k/tags/nog_patch_61/or1ksim/peripheral/16450.c |
529 |
Bug in receiver fixed. |
simons |
8257d 14h |
/or1k/tags/nog_patch_61/or1ksim/peripheral/16450.c |
492 |
uart THRE interrupt immedialty after write to IER |
markom |
8273d 22h |
/or1k/tags/nog_patch_61/or1ksim/peripheral/16450.c |
490 |
clkcycle parsing problem fixed |
markom |
8274d 17h |
/or1k/tags/nog_patch_61/or1ksim/peripheral/16450.c |
424 |
memory configuration file joined into .cfg file; *mem.cfg are obsolete; read-only and write-only memory is supported; memory logging is not yet supported; update of testbench - only cache test fails, since it writes to RO memory |
markom |
8283d 22h |
/or1k/tags/nog_patch_61/or1ksim/peripheral/16450.c |
423 |
changed break behaviour and interrupt pending; interrupt line chabnged to 15; sync bug in mode switch |
markom |
8284d 17h |
/or1k/tags/nog_patch_61/or1ksim/peripheral/16450.c |
411 |
acv uart testsuite now works (without modem test) |
markom |
8287d 22h |
/or1k/tags/nog_patch_61/or1ksim/peripheral/16450.c |