On 17/03/15 07:23, Alexander Graf wrote:
On 09.03.15 23:24, Mark Cave-Ayland wrote:
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>
Works for me, I'd still prefer to just see unaligned bdrv_*() functions
and remove most of the logic we have here.
Either way, I think this is a reasonable intermediate step.
Ping? John - I've added you as CC as per Stefan's request.
ATB,
Mark.