aboutsummaryrefslogtreecommitdiff
path: root/hw/ide.c
diff options
context:
space:
mode:
authorbellard <bellard@c046a42c-6fe2-441c-8c8c-71466251a162>2005-04-28 19:26:35 +0000
committerbellard <bellard@c046a42c-6fe2-441c-8c8c-71466251a162>2005-04-28 19:26:35 +0000
commit98ff7d30f2dd8ebf9c8ecb8a579bd24c17a15440 (patch)
tree33240ae308e4855c875f0ef71c493a78e68c3fe1 /hw/ide.c
parent43095f3198919e64f8ace4bda12bd45d71795dd2 (diff)
BMDMA interrupt fix (aka Solaris x86 IDE bug fix)
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@1421 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'hw/ide.c')
-rw-r--r--hw/ide.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/hw/ide.c b/hw/ide.c
index 3997a06e26..d2220ba0b6 100644
--- a/hw/ide.c
+++ b/hw/ide.c
@@ -499,7 +499,10 @@ static inline void ide_abort_command(IDEState *s)
static inline void ide_set_irq(IDEState *s)
{
+ BMDMAState *bm = s->bmdma;
if (!(s->cmd & IDE_CMD_DISABLE_IRQ)) {
+ if (bm)
+ bm->status |= BM_STATUS_INT;
#ifdef TARGET_PPC
if (s->openpic)
openpic_set_irq(s->openpic, s->irq, 1);