qemu-devel
[Top][All Lists]
Advanced

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

[Qemu-devel] [RFC 0/2] macio: split out unaligned DMA access into separa


From: Mark Cave-Ayland
Subject: [Qemu-devel] [RFC 0/2] macio: split out unaligned DMA access into separate functions
Date: Mon, 9 Mar 2015 22:24:51 +0000

This patchset attempts to separate out the IDE/ATAPI logic from the unaligned
DMA access logic for macio which provides the following benefits:

1) Reduced code complexity

The existing macio IDE/ATAPI functions were becoming extremely difficult to
follow through the various callbacks. By splitting up the functions in this
way it becomes much easier to follow the DMA-specific sections of code.

2) Future-proofing

If/when the block layer becomes able to handle unaligned DMA accesses directly
then it should be possible to switch out pmac_dma_read() and pmac_dma_write()
with their unaligned-capable bdrv_*() equivalents without having to change any
other logic.

3) Fix intermittent CDROM detection under -M g3beige

The code refactoring now correctly handles non-block ATAPI transfers which
fixes the problem with intermittent CDROM detection with Darwin under
-M g3beige.

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


Mark Cave-Ayland (2):
  macio: move unaligned DMA read code into separate pmac_dma_read()
    function
  macio: move unaligned DMA write code into separate pmac_dma_write()
    function

 hw/ide/macio.c             |  487 +++++++++++++++++++++++---------------------
 include/hw/ppc/mac_dbdma.h |    4 -
 2 files changed, 254 insertions(+), 237 deletions(-)

-- 
1.7.10.4




reply via email to

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