m68k/atari - atari_scsi: use correct virt/phys translation for DMA buffer
authorMichael Schmitz <schmitzmic@gmail.com>
Mon, 31 Mar 2014 08:06:08 +0000 (21:06 +1300)
committerGeert Uytterhoeven <geert@linux-m68k.org>
Mon, 26 May 2014 20:41:25 +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-scsi@vger.kernel.org
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
drivers/scsi/atari_scsi.c

index 296c936cc03cc43397ba4905d53ac1fd7b050f89..a8d721ff19ebff8b5f11e4cfc1b17e715defec30 100644 (file)
@@ -639,7 +639,7 @@ static int __init atari_scsi_detect(struct scsi_host_template *host)
                                        "double buffer\n");
                        return 0;
                }
-               atari_dma_phys_buffer = virt_to_phys(atari_dma_buffer);
+               atari_dma_phys_buffer = atari_stram_to_phys(atari_dma_buffer);
                atari_dma_orig_addr = 0;
        }
 #endif