Commit 1007c4bc authored by David Daney's avatar David Daney Committed by Ralf Baechle

ata: pata_octeon_cf: Use correct byte order for DMA in when built little-endian.

We need to set the 'endian' bit in this case.
Acked-by: default avatarJeff Garzik <jgarzik@redhat.com>
Signed-off-by: default avatarDavid Daney <david.daney@cavium.com>
parent 43f01da0
...@@ -20,6 +20,7 @@ ...@@ -20,6 +20,7 @@
#include <linux/platform_device.h> #include <linux/platform_device.h>
#include <scsi/scsi_host.h> #include <scsi/scsi_host.h>
#include <asm/byteorder.h>
#include <asm/octeon/octeon.h> #include <asm/octeon/octeon.h>
/* /*
...@@ -589,6 +590,9 @@ static void octeon_cf_dma_start(struct ata_queued_cmd *qc) ...@@ -589,6 +590,9 @@ static void octeon_cf_dma_start(struct ata_queued_cmd *qc)
/* Set the direction of the DMA */ /* Set the direction of the DMA */
mio_boot_dma_cfg.u64 = 0; mio_boot_dma_cfg.u64 = 0;
#ifdef __LITTLE_ENDIAN
mio_boot_dma_cfg.s.endian = 1;
#endif
mio_boot_dma_cfg.s.en = 1; mio_boot_dma_cfg.s.en = 1;
mio_boot_dma_cfg.s.rw = ((qc->tf.flags & ATA_TFLAG_WRITE) != 0); mio_boot_dma_cfg.s.rw = ((qc->tf.flags & ATA_TFLAG_WRITE) != 0);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment