diff options
author | Quinn Jensen <quinn.jensen@freescale.com> | 2007-10-24 21:24:53 -0600 |
---|---|---|
committer | Quinn Jensen <quinn.jensen@freescale.com> | 2007-10-24 21:24:53 -0600 |
commit | d8749be38fee07bde24f77bedb122c9c2cdf8377 (patch) | |
tree | 1b20169bd60e59eff12fc0b6c28042e7d6ca35b3 /arch | |
parent | b4d071c2e403c2279e9e1b7216e22cdbe12d43c7 (diff) |
Bugzilla 771 - Fix pata_fsl libata driver DMA mode
Patch for Bugzilla 771 - Fix pata_fsl libata driver DMA mode. Full
sglist DMA working on linux 2.6.22 for MX27/MX31. Not fast enough on
MX27, though. MX31 is as fast as the old mxc_ide driver. Writes are
unreliable on MX27 TO1. Beyond UDMA3 on MX27 wasn't 100% reliable.
http://www.bitshrine.org/gpp/linux-2.6.22-mx-Bugzilla-771-Fix-pata_fsl-libata-driver-DM.patch
Diffstat (limited to 'arch')
-rw-r--r-- | arch/arm/mach-mx27/devices.c | 3 | ||||
-rw-r--r-- | arch/arm/mach-mx3/devices.c | 3 |
2 files changed, 6 insertions, 0 deletions
diff --git a/arch/arm/mach-mx27/devices.c b/arch/arm/mach-mx27/devices.c index 202816f62d61..b1ac7c5b24da 100644 --- a/arch/arm/mach-mx27/devices.c +++ b/arch/arm/mach-mx27/devices.c @@ -638,6 +638,9 @@ static int ata_get_clk_rate(void) } static struct fsl_ata_platform_data ata_data = { + .udma_mask = 0x0F, /* the board handles up to UDMA3 */ + .fifo_alarm = MXC_IDE_DMA_WATERMARK / 2, + .max_sg = MXC_IDE_DMA_BD_NR, .init = ata_init, .exit = ata_exit, .get_clk_rate = ata_get_clk_rate, diff --git a/arch/arm/mach-mx3/devices.c b/arch/arm/mach-mx3/devices.c index 779321960591..18dee757dc21 100644 --- a/arch/arm/mach-mx3/devices.c +++ b/arch/arm/mach-mx3/devices.c @@ -918,6 +918,9 @@ static int ata_get_clk_rate(void) } static struct fsl_ata_platform_data ata_data = { + .udma_mask = 0x0F, /* board can handle up to UDMA3 */ + .fifo_alarm = MXC_IDE_DMA_WATERMARK / 2, + .max_sg = MXC_IDE_DMA_BD_NR, .init = ata_init, .exit = ata_exit, .get_clk_rate = ata_get_clk_rate, |