Sonic,
Main part of this patch was merge in mainline:
http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=blobdiff;f=drivers/ata/pata_bf54x.c;h=088a41f4e656ce57ebc36481e7b916f3df873440;hp=81db405a5445bfe1a685cb374d406c4ac97de672;hb=f88c480dac88a754f84e943cb5539d59cda3c089;hpb=92d499d991ec4f5cbd00d6f33967eab9d3ee8d6c
But this git patch is different with #3938 svn commit.
Could you please send out the pata_bf54x driver patch to the mainline?
and make the mainline code sync with our svn version.
Thanks
-Bryan
On Tue, 2007-11-27 at 10:54 +0800, [EMAIL PROTECTED] wrote:
> Revision
> 3938
> Author
> sonicz
> Date
> 2007-11-26 20:54:13 -0600 (Mon, 26 Nov 2007)
> Log Message
> Fix bug[#3666] and [#3513] Set proper ATA UDMA mode according to sclk.
> Diffstat
> pata_bf54x.c | 16 ++++++++++++----
> 1 files changed, 12 insertions(+), 4 deletions(-)
> Modified Paths
> * trunk/drivers/ata/pata_bf54x.c
> Diff
> Modified: trunk/drivers/ata/pata_bf54x.c (3937 => 3938)
>
> --- trunk/drivers/ata/pata_bf54x.c 2007-11-26 07:09:03 UTC (rev 3937)
> +++ trunk/drivers/ata/pata_bf54x.c 2007-11-27 02:54:13 UTC (rev 3938)
> @@ -1437,11 +1437,7 @@
> | ATA_FLAG_NO_LEGACY,
> .pio_mask = 0x1f, /* pio0-4 */
> .mwdma_mask = 0,
> -#ifdef CONFIG_PATA_BF54X_DMA
> - .udma_mask = ATA_UDMA5,
> -#else
> .udma_mask = 0,
> -#endif
> .port_ops = &bfin_pata_ops,
> },
> };
> @@ -1515,6 +1511,10 @@
> int board_idx = 0;
> struct resource *res;
> struct ata_host *host;
> +#ifdef CONFIG_PATA_BF54X_DMA
> + unsigned int fsclk = get_sclk();
> + int udma_mode = 5;
> +#endif
> const struct ata_port_info *ppi[] =
> { &bfin_port_info[board_idx], NULL };
>
> @@ -1533,6 +1533,14 @@
> if (res == NULL)
> return -EINVAL;
>
> +#ifdef CONFIG_PATA_BF54X_DMA
> + bfin_port_info[board_idx].udma_mask = ATA_UDMA5;
> + while (udma_mode > 0 && udma_fsclk[udma_mode] > fsclk) {
> + udma_mode--;
> + bfin_port_info[board_idx].udma_mask >>= 1;
> + }
> +#endif
> +
> /*
> * Now that that's out of the way, wire up the port..
> */
_______________________________________________
Linux-kernel-commits mailing list
[email protected]
http://blackfin.uclinux.org/mailman/listinfo/linux-kernel-commits