mirror of
https://git.freebsd.org/ports.git
synced 2025-07-18 01:39:16 -04:00
- Fix a serial emulation bug affecting (at least) FreeBSD 8's new
uart(4) driver. - Bump PORTREVISION. Reported by: Olivier Cochard-Labbé <olivier@cochard.me> Feature safe: yes
This commit is contained in:
parent
c943dce672
commit
c7acb4aa30
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=241667
2 changed files with 19 additions and 1 deletions
|
@ -7,7 +7,7 @@
|
||||||
|
|
||||||
PORTNAME= qemu
|
PORTNAME= qemu
|
||||||
PORTVERSION= 0.10.6
|
PORTVERSION= 0.10.6
|
||||||
PORTREVISION= 2
|
PORTREVISION= 3
|
||||||
CATEGORIES= emulators
|
CATEGORIES= emulators
|
||||||
MASTER_SITES= ${MASTER_SITE_SAVANNAH} \
|
MASTER_SITES= ${MASTER_SITE_SAVANNAH} \
|
||||||
http://bellard.org/qemu/
|
http://bellard.org/qemu/
|
||||||
|
|
18
emulators/qemu/files/patch-hw-serial.c
Normal file
18
emulators/qemu/files/patch-hw-serial.c
Normal file
|
@ -0,0 +1,18 @@
|
||||||
|
Index: qemu/hw/serial.c
|
||||||
|
@@ -196,12 +195,10 @@ static void serial_update_irq(SerialStat
|
||||||
|
* this is not in the specification but is observed on existing
|
||||||
|
* hardware. */
|
||||||
|
tmp_iir = UART_IIR_CTI;
|
||||||
|
- } else if ((s->ier & UART_IER_RDI) && (s->lsr & UART_LSR_DR)) {
|
||||||
|
- if (!(s->fcr & UART_FCR_FE)) {
|
||||||
|
- tmp_iir = UART_IIR_RDI;
|
||||||
|
- } else if (s->recv_fifo.count >= s->recv_fifo.itl) {
|
||||||
|
- tmp_iir = UART_IIR_RDI;
|
||||||
|
- }
|
||||||
|
+ } else if ((s->ier & UART_IER_RDI) && (s->lsr & UART_LSR_DR) &&
|
||||||
|
+ (!(s->fcr & UART_FCR_FE) ||
|
||||||
|
+ s->recv_fifo.count >= s->recv_fifo.itl)) {
|
||||||
|
+ tmp_iir = UART_IIR_RDI;
|
||||||
|
} else if ((s->ier & UART_IER_THRI) && s->thr_ipending) {
|
||||||
|
tmp_iir = UART_IIR_THRI;
|
||||||
|
} else if ((s->ier & UART_IER_MSI) && (s->msr & UART_MSR_ANY_DELTA)) {
|
Loading…
Add table
Reference in a new issue