diff options
author | 2007-11-27 19:43:48 +0900 | |
---|---|---|
committer | 2008-01-23 05:24:12 -0500 | |
commit | c88f90c3779cd5e710f2acdf59ad2bd0380de98d (patch) | |
tree | 7b3d7464f03d2abdc105d07728cab0df67262a25 /include/linux/ata.h | |
parent | libata: xfer_mask is unsigned long not unsigned int (diff) | |
download | linux-c88f90c3779cd5e710f2acdf59ad2bd0380de98d.tar.gz linux-c88f90c3779cd5e710f2acdf59ad2bd0380de98d.tar.bz2 linux-c88f90c3779cd5e710f2acdf59ad2bd0380de98d.zip |
libata: add ATA_CBL_PATA_IGN
ATA_CBL_PATA_UNK indicates that the cable type can't be determined
from the host side and might be either 80c or 40c. libata applies
drive or other generic limit in this case. However, there are
controllers where both host and drive side detections are
misimplemented and the driver has to rely solely on private method -
peeking BIOS or ACPI configuration or using some other private
mechanism.
This patch adds ATA_CBL_PATA_IGN which tells libata to ignore the
cable type completely and just let the LLD determine the transfer mode
via host transfer mode masks and ->mode_filter().
Signed-off-by: Tejun Heo <htejun@gmail.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Diffstat (limited to 'include/linux/ata.h')
-rw-r--r-- | include/linux/ata.h | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/include/linux/ata.h b/include/linux/ata.h index 43fecf62773a..c17e9404c88d 100644 --- a/include/linux/ata.h +++ b/include/linux/ata.h @@ -286,9 +286,10 @@ enum { ATA_CBL_NONE = 0, ATA_CBL_PATA40 = 1, ATA_CBL_PATA80 = 2, - ATA_CBL_PATA40_SHORT = 3, /* 40 wire cable to high UDMA spec */ - ATA_CBL_PATA_UNK = 4, - ATA_CBL_SATA = 5, + ATA_CBL_PATA40_SHORT = 3, /* 40 wire cable to high UDMA spec */ + ATA_CBL_PATA_UNK = 4, /* don't know, maybe 80c? */ + ATA_CBL_PATA_IGN = 5, /* don't know, ignore cable handling */ + ATA_CBL_SATA = 6, /* SATA Status and Control Registers */ SCR_STATUS = 0, |