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 19h |
/or1k/tags/stable_0_2_0_rc2/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 13h |
/or1k/tags/stable_0_2_0_rc2/or1ksim/peripheral/16450.c |
1143 |
Make UART transmitter-empty interrupts match both 16450 and 16550 behavior. |
sfurman |
7800d 09h |
/or1k/tags/stable_0_2_0_rc2/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 17h |
/or1k/tags/stable_0_2_0_rc2/or1ksim/peripheral/16450.c |
1073 |
channels support |
rprescott |
7965d 21h |
/or1k/tags/stable_0_2_0_rc2/or1ksim/peripheral/16450.c |
997 |
PRINTF should be used instead of printf; command redirection repaired |
markom |
8029d 06h |
/or1k/tags/stable_0_2_0_rc2/or1ksim/peripheral/16450.c |
970 |
Testbench is now running on ORP architecture platform. |
simons |
8036d 17h |
/or1k/tags/stable_0_2_0_rc2/or1ksim/peripheral/16450.c |
884 |
code cleaning - a lot of global variables moved to runtime struct |
markom |
8073d 05h |
/or1k/tags/stable_0_2_0_rc2/or1ksim/peripheral/16450.c |
821 |
ugly bug with duplicate redefined i removed |
markom |
8159d 01h |
/or1k/tags/stable_0_2_0_rc2/or1ksim/peripheral/16450.c |
806 |
uart now partially uses scheduler |
markom |
8164d 07h |
/or1k/tags/stable_0_2_0_rc2/or1ksim/peripheral/16450.c |
805 |
kbd, fb, vga devices now uses scheduler |
markom |
8164d 08h |
/or1k/tags/stable_0_2_0_rc2/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 |
8201d 06h |
/or1k/tags/stable_0_2_0_rc2/or1ksim/peripheral/16450.c |
549 |
enabled parameters removed from devices, which also have number of devices; command line --output-cfg parameter added |
markom |
8255d 02h |
/or1k/tags/stable_0_2_0_rc2/or1ksim/peripheral/16450.c |
530 |
THRI interrupt fixed. |
simons |
8257d 19h |
/or1k/tags/stable_0_2_0_rc2/or1ksim/peripheral/16450.c |
529 |
Bug in receiver fixed. |
simons |
8257d 21h |
/or1k/tags/stable_0_2_0_rc2/or1ksim/peripheral/16450.c |
492 |
uart THRE interrupt immedialty after write to IER |
markom |
8274d 05h |
/or1k/tags/stable_0_2_0_rc2/or1ksim/peripheral/16450.c |
490 |
clkcycle parsing problem fixed |
markom |
8275d 01h |
/or1k/tags/stable_0_2_0_rc2/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 |
8284d 05h |
/or1k/tags/stable_0_2_0_rc2/or1ksim/peripheral/16450.c |
423 |
changed break behaviour and interrupt pending; interrupt line chabnged to 15; sync bug in mode switch |
markom |
8285d 00h |
/or1k/tags/stable_0_2_0_rc2/or1ksim/peripheral/16450.c |
411 |
acv uart testsuite now works (without modem test) |
markom |
8288d 05h |
/or1k/tags/stable_0_2_0_rc2/or1ksim/peripheral/16450.c |