OSDN Git Service

m68k/atari - ataflop: use correct virt/phys translation for DMA buffer
authorMichael Schmitz <schmitzmic@gmail.com>
Mon, 31 Mar 2014 08:06:07 +0000 (21:06 +1300)
committerGeert Uytterhoeven <geert@linux-m68k.org>
Mon, 26 May 2014 20:41:24 +0000 (22:41 +0200)
With the kernel running from FastRAM instead of ST-RAM, none of ST-RAM is
mapped by mem_init, and DMA-addressable buffer must be mapped by ioremap.

Use platform specific virt/phys translation helpers for this case.

Signed-off-by: Michael Schmitz <schmitz@debian.org>
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
drivers/block/ataflop.c

index 96b629e..cfa64bd 100644 (file)
@@ -1952,7 +1952,7 @@ static int __init atari_floppy_init (void)
                goto Enomem;
        }
        TrackBuffer = DMABuffer + 512;
-       PhysDMABuffer = virt_to_phys(DMABuffer);
+       PhysDMABuffer = atari_stram_to_phys(DMABuffer);
        PhysTrackBuffer = virt_to_phys(TrackBuffer);
        BufferDrive = BufferSide = BufferTrack = -1;