Messages in this thread Patch in this message | | | From | David Daney <> | Subject | [PATCH 2/2] ata: pata_octeon_cf: Use correct byte order for DMA in when built little-endian. | Date | Fri, 17 Aug 2012 16:54:33 -0700 |
| |
From: David Daney <david.daney@cavium.com>
We need to set the 'endian' bit in this case.
Signed-off-by: David Daney <david.daney@cavium.com> --- drivers/ata/pata_octeon_cf.c | 4 ++++ 1 file changed, 4 insertions(+)
diff --git a/drivers/ata/pata_octeon_cf.c b/drivers/ata/pata_octeon_cf.c index 652d035..4e1194b 100644 --- a/drivers/ata/pata_octeon_cf.c +++ b/drivers/ata/pata_octeon_cf.c @@ -20,6 +20,7 @@ #include <linux/platform_device.h> #include <scsi/scsi_host.h> +#include <asm/byteorder.h> #include <asm/octeon/octeon.h> /* @@ -589,6 +590,9 @@ static void octeon_cf_dma_start(struct ata_queued_cmd *qc) /* Set the direction of the DMA */ 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.rw = ((qc->tf.flags & ATA_TFLAG_WRITE) != 0); -- 1.7.11.2
| |