aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux
diff options
context:
space:
mode:
authorAlan Cox <alan@lxorguk.ukuu.org.uk>2007-04-10 19:23:13 -0400
committerJeff Garzik <jeff@garzik.org>2007-04-28 14:16:06 -0400
commit1e999736cafdffc374f22eed37b291129ef82e4e (patch)
treed71e0907827841de66f172dec0cc4d550bd2cec8 /include/linux
parent6bfff31e77cfa1b13490337e5a4dbaa3407e83ac (diff)
libata: HPA support
Signed-off-by: Alan Cox <alan@redhat.com> Add support for ignoring the BIOS HPA result (off by default) and setting the disk to the full available size unless already frozen. Tested with various platforms/disks and confirmed to work with the Macintosh (which broke earlier) and ata_piix (breakage due to the LBA48 readback that Tejun fixed). For normal users this brings us, I believe, to feature parity with old IDE (and of course more featured in some areas too). Signed-off-by: Jeff Garzik <jeff@garzik.org>
Diffstat (limited to 'include/linux')
-rw-r--r--include/linux/ata.h2
-rw-r--r--include/linux/libata.h1
2 files changed, 3 insertions, 0 deletions
diff --git a/include/linux/ata.h b/include/linux/ata.h
index ffb6cdc5010d..f4dc8dfeadc2 100644
--- a/include/linux/ata.h
+++ b/include/linux/ata.h
@@ -159,6 +159,8 @@ enum {
159 ATA_CMD_INIT_DEV_PARAMS = 0x91, 159 ATA_CMD_INIT_DEV_PARAMS = 0x91,
160 ATA_CMD_READ_NATIVE_MAX = 0xF8, 160 ATA_CMD_READ_NATIVE_MAX = 0xF8,
161 ATA_CMD_READ_NATIVE_MAX_EXT = 0x27, 161 ATA_CMD_READ_NATIVE_MAX_EXT = 0x27,
162 ATA_CMD_SET_MAX = 0xF9,
163 ATA_CMD_SET_MAX_EXT = 0x37,
162 ATA_CMD_READ_LOG_EXT = 0x2f, 164 ATA_CMD_READ_LOG_EXT = 0x2f,
163 165
164 /* READ_LOG_EXT pages */ 166 /* READ_LOG_EXT pages */
diff --git a/include/linux/libata.h b/include/linux/libata.h
index 7c14a52079d5..73b86dd30aec 100644
--- a/include/linux/libata.h
+++ b/include/linux/libata.h
@@ -446,6 +446,7 @@ struct ata_device {
446 struct scsi_device *sdev; /* attached SCSI device */ 446 struct scsi_device *sdev; /* attached SCSI device */
447 /* n_sector is used as CLEAR_OFFSET, read comment above CLEAR_OFFSET */ 447 /* n_sector is used as CLEAR_OFFSET, read comment above CLEAR_OFFSET */
448 u64 n_sectors; /* size of device, if ATA */ 448 u64 n_sectors; /* size of device, if ATA */
449 u64 n_sectors_boot; /* size of ATA device at startup */
449 unsigned int class; /* ATA_DEV_xxx */ 450 unsigned int class; /* ATA_DEV_xxx */
450 u16 id[ATA_ID_WORDS]; /* IDENTIFY xxx DEVICE data */ 451 u16 id[ATA_ID_WORDS]; /* IDENTIFY xxx DEVICE data */
451 u8 pio_mode; 452 u8 pio_mode;