qemu-devel
[Top][All Lists]
Advanced

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

[Qemu-devel] [PATCH 0/5] cmd646 tidy-up and interrupt status fixes


From: Mark Cave-Ayland
Subject: [Qemu-devel] [PATCH 0/5] cmd646 tidy-up and interrupt status fixes
Date: Fri, 8 Aug 2014 17:23:31 +0100

This patchset came out of my work trying to boot NetBSD on SPARC64.

According to the datasheet, the 646U2 UDMA interrupt status bits are exact 
mirrors of the normal DMA interrupt status bits, and an interrupt can be
cleared by writing a 1 to the relevant bit in PCI configuration space.

The existing implementation caused NetBSD to fail since it would always check
and clear the normal DMA interrupt status bit, even if UDMA was being used.
Hence this patchset ensures that the current interrupt status is always 
consistent between both normal DMA and UDMA registers, including when either 
one of the interrupt status bits is cleared by writing to PCI configuration 
space.

Signed-off-by: Mark Cave-Ayland <address@hidden>

Mark Cave-Ayland (5):
  cmd646: add constants for CNTRL register access
  cmd646: synchronise DMA interrupt status with UDMA interrupt status
  cmd646: switch cmd646_update_irq() to accept PCIDevice instead of
    PCIIDEState
  cmd646: allow MRDMODE interrupt status bits clearing from PCI config
    space
  cmd646: synchronise UDMA interrupt status with DMA interrupt status

 hw/ide/cmd646.c |   94 +++++++++++++++++++++++++++++++++++++++++++++++++------
 1 file changed, 85 insertions(+), 9 deletions(-)

-- 
1.7.10.4




reply via email to

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