libata-sff: make BMDMA optional
authorTejun Heo <tj@kernel.org>
Wed, 19 May 2010 20:10:24 +0000 (22:10 +0200)
committerJeff Garzik <jgarzik@redhat.com>
Tue, 25 May 2010 23:41:12 +0000 (19:41 -0400)
commit9a7780c9acb821fe1c2b6fc53f74cc2556ff5364
tree9590f79a1a0631120322ecfa8a86f610859d7aec
parentd6b0de8c28ef32d081cfee938e443ce2a2429cfe
libata-sff: make BMDMA optional

Make BMDMA optional depending on new config variable CONFIG_ATA_BMDMA.
In Kconfig, drivers are grouped into five groups - non-SFF native, SFF
w/ custom DMA interface, SFF w/ BMDMA, PIO-only SFF, and generic
fallback / legacy ones.  Kconfig and Makefile are reorganized
according to the groups and ordered alphabetically inside each group.

ata_ioports.bmdma_addr and ata_port.bmdma_prd[_dma] are put into
CONFIG_ATA_BMDMA, as are all bmdma related ops, variables and
functions.

This increase the binary size slightly when BMDMA is enabled but on
both native-only and PIO-only configurations the size is slightly
reduced.  Either way, the size difference is insignificant.  This
change is more meaningful to signify the separation between SFF and
BMDMA and as a tool to verify the separation.

Signed-off-by: Tejun Heo <tj@kernel.org>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
drivers/ata/Kconfig
drivers/ata/Makefile
drivers/ata/libata-sff.c
include/linux/libata.h