libata-sff: clean up inheritance in several drivers
authorTejun Heo <tj@kernel.org>
Mon, 10 May 2010 19:41:33 +0000 (21:41 +0200)
committerJeff Garzik <jgarzik@redhat.com>
Wed, 19 May 2010 17:31:29 +0000 (13:31 -0400)
commit8930ff254a3a80d4477c3391ade07d6dd2a036c7
tree2c83672d48fbe306d6968f9f54b0d80fb736d5f9
parent9f2f72107ff621fdf3066e5a1b5ecb03ee587ebc
libata-sff: clean up inheritance in several drivers

1. pata_cmd640 is PIO only.  Inherit from sff.

2. pata_macio is BMDMA.  Inherit from bmdma and drop explicit
   bmdma_mode_filter() setting.

3. In sata_mv, unlike mv5, mv6 is BMDMA.  Inherit from bmdma and
   don't clear ->post_internal_cmd().

4. bf54x and icside are quasi-BMDMA controllers which don't use the
   standard BMDMA registers so they don't initialize bmdma_addr and
   inherit from sff to avoid the default mode_filter which disables
   DMA modes if bmdma_addr is not initialized.

For 2 and 3, this patch makes the drivers explicitly specify
->mode_filter to ATA_OP_NULL while inheriting from ata_bmdma_port_ops.
These will be removed by the next patch.

This patch makes all and only BMDMA drivers inherit from
ata_bmdma_port_ops to ease further SFF/BMDMA separation.

Signed-off-by: Tejun Heo <tj@kernel.org>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
drivers/ata/pata_bf54x.c
drivers/ata/pata_cmd640.c
drivers/ata/pata_icside.c
drivers/ata/pata_macio.c
drivers/ata/sata_mv.c