qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] hw/ide: Remove status register read side effect


From: BALATON Zoltan
Subject: Re: [PATCH] hw/ide: Remove status register read side effect
Date: Fri, 21 Feb 2020 16:43:15 +0100 (CET)
User-agent: Alpine 2.22 (BSF 395 2020-01-19)

On Fri, 21 Feb 2020, address@hidden wrote:
The Linux libATA API documentation mentions that on some hardware,
reading the status register has the side effect of clearing the
interrupt condition. When emulating the generic Sun4u machine running
Solaris 10, the Solaris 10 CMD646 driver exits fatally because of this
emulated side effect. This side effect is likely to not exist on real
CMD646 hardware.

The chip docs don't mention any side effect, they only say that the DMA IRQ and Error bits in the bus master IDE status reg (bits 2 and 1) are write 1 to clear so this might be OK but this change seems to break something else according to a CI test report from patchew. Unfortunately this does not change my problems with other BMDMA devices on PPC.

Regards,
BALATON Zoltan

Signed-off-by: Jasper Lowell <address@hidden>
---
hw/ide/core.c | 1 -
1 file changed, 1 deletion(-)

diff --git a/hw/ide/core.c b/hw/ide/core.c
index 80000eb766..82fd0632ac 100644
--- a/hw/ide/core.c
+++ b/hw/ide/core.c
@@ -2210,7 +2210,6 @@ uint32_t ide_ioport_read(void *opaque, uint32_t addr)
        } else {
            ret = s->status;
        }
-        qemu_irq_lower(bus->irq);
        break;
    }





reply via email to

[Prev in Thread] Current Thread [Next in Thread]