On Saturday 11 August 2007, Sergei Shtylyov wrote:
> Hello.
>
> Alan Cox wrote:
>
> > Set the MWDMA timing by updating the correct registers. Split the PIO
> > path as this is mostly shared code. Wants testing.
>
> Cool! So much simpler than my fix to the old IDE driver...
>
> > Signed-off-by: Alan Cox <[EMAIL PROTECTED]>
>
> Acked-by: Sergei Shtylyov <[EMAIL PROTECTED]>
>
> > diff -u --new-file --recursive --exclude-from /usr/src/exclude
> > linux.vanilla-2.6.23rc1-mm1/drivers/ata/pata_cmd64x.c
> > linux-2.6.23rc1-mm1/drivers/ata/pata_cmd64x.c
> > --- linux.vanilla-2.6.23rc1-mm1/drivers/ata/pata_cmd64x.c 2007-07-26
> > 15:01:52.000000000 +0100
> > +++ linux-2.6.23rc1-mm1/drivers/ata/pata_cmd64x.c 2007-08-08
> > 11:52:23.000000000 +0100
> [...]
> > @@ -117,8 +118,9 @@
> > int arttim = arttim_port[ap->port_no][adev->devno];
> > int drwtim = drwtim_port[ap->port_no][adev->devno];
> >
> > -
> > - if (ata_timing_compute(adev, adev->pio_mode, &t, T, 0) < 0) {
> > + /* ata_timing_compute is smart and will produce timings for MWDMA
> > + that don't violate the drives PIO capabilities. */
> > + if (ata_timing_compute(adev, mode, &t, T, 0) < 0) {
> > printk(KERN_ERR DRV_NAME ": mode computation failed.\n");
> > return;
> > }
>
> That function rocks (except I didn't get what the address setup timings
> mean to SW/MW DMA)...
JFYI: this function was "borrowed" from drivers/ide/ide-timing.h,
you can use it in IDE host drivers as well... ;)
Bart
-
To unsubscribe from this list: send the line "unsubscribe linux-ide" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at http://vger.kernel.org/majordomo-info.html