On 31/05/2023 22:10, Bernhard Beschow wrote:

Signed-off-by: Bernhard Beschow <[email protected]>
---
  hw/ide/pci.c | 3 ++-
  1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/hw/ide/pci.c b/hw/ide/pci.c
index 0b26a4ce9f..a25b352537 100644
--- a/hw/ide/pci.c
+++ b/hw/ide/pci.c
@@ -320,7 +320,8 @@ void bmdma_cmd_writeb(BMDMAState *bm, uint32_t val)
void bmdma_status_writeb(BMDMAState *bm, uint32_t val)
  {
-    bm->status = (val & 0x60) | (bm->status & 1) | (bm->status & ~val & 0x06);
+    bm->status = (val & 0x60) | (bm->status & BM_STATUS_DMAING)
+                 | (bm->status & ~val & (BM_STATUS_ERROR | BM_STATUS_INT));
  }
static uint64_t bmdma_addr_read(void *opaque, hwaddr addr,

Reviewed-by: Mark Cave-Ayland <[email protected]>


ATB,

Mark.


Reply via email to