sata_via: Correctly setup PIO/DMA for pata slave on vt6421.
authorBart Hartgers <bart.hartgers@gmail.com>
Sat, 16 Jan 2010 23:56:54 +0000 (00:56 +0100)
committerJeff Garzik <jgarzik@redhat.com>
Mon, 1 Mar 2010 19:58:44 +0000 (14:58 -0500)
commit02d1d6160ffe13f4ebc6f85f72366a5da0b1fb9b
tree3798274cf1cd116ef7238a8ca32a853bbca13708
parent9ffc5da5e1e57592da9c22d83a98c63afc8d985c
sata_via: Correctly setup PIO/DMA for pata slave on vt6421.

Before only the timings for master were set. Datasheet can be found
here: ftp://ftp.vtbridge.org/Docs/Storage/DS_VT6421A_100_CCPL.PDF
Surprisingly, a slave drive works without this patch. According to the
datasheet, the controller by default derives the DMA mode from the
Set Features command issued to a drive. Not sure about the PIO
timings, though. The real problem is that the timings for the master
effectively are the ones tuned for the slave. If these support
different UDMA-settings, there is trouble, especially when the slave
supports a higher UDMA than the master.

Anyhow, using the same mechanism for both master and slave seems like
a good idea.

Signed-off-by: Bart Hartgers <bart.hartgers@gmail.com>
Acked-by: Tejun Heo <tj@kernel.org>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
drivers/ata/sata_via.c