diff options
author | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-10-29 15:11:54 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-10-29 15:11:54 -0400 |
commit | 00cda56d39f013cce60f44f1e3da19b87eba5d85 (patch) | |
tree | 2cfe7bf556562a846ff46a558a31ca1939d2e12c /include/linux | |
parent | da8e5aa21e037be02e0752e80b9444ff60185a3f (diff) | |
parent | ab6fc95f609b372a19e18ea689986846ab1ba29c (diff) |
Merge branch 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev
* 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev:
[libata] AHCI: fix newly introduced host-reset bug
[libata] sata_nv: fix SWNCQ enabling
libata: add MAXTOR 7V300F0/VA111900 to NCQ blacklist
libata: no need to speed down if already at PIO0
libata: relocate forcing PIO0 on reset
pata_ns87415: define SUPERIO_IDE_MAX_RETRIES
[libata] Address some checkpatch-spotted issues
[libata] fix 'if(' and similar areas that lack whitespace
libata: implement ata_wait_after_reset()
libata: track SLEEP state and issue SRST to wake it up
libata: relocate and fix post-command processing
Diffstat (limited to 'include/linux')
-rw-r--r-- | include/linux/ata.h | 1 | ||||
-rw-r--r-- | include/linux/libata.h | 9 |
2 files changed, 10 insertions, 0 deletions
diff --git a/include/linux/ata.h b/include/linux/ata.h index 8263a7b74d34..e21c002c3a4a 100644 --- a/include/linux/ata.h +++ b/include/linux/ata.h | |||
@@ -180,6 +180,7 @@ enum { | |||
180 | ATA_CMD_VERIFY_EXT = 0x42, | 180 | ATA_CMD_VERIFY_EXT = 0x42, |
181 | ATA_CMD_STANDBYNOW1 = 0xE0, | 181 | ATA_CMD_STANDBYNOW1 = 0xE0, |
182 | ATA_CMD_IDLEIMMEDIATE = 0xE1, | 182 | ATA_CMD_IDLEIMMEDIATE = 0xE1, |
183 | ATA_CMD_SLEEP = 0xE6, | ||
183 | ATA_CMD_INIT_DEV_PARAMS = 0x91, | 184 | ATA_CMD_INIT_DEV_PARAMS = 0x91, |
184 | ATA_CMD_READ_NATIVE_MAX = 0xF8, | 185 | ATA_CMD_READ_NATIVE_MAX = 0xF8, |
185 | ATA_CMD_READ_NATIVE_MAX_EXT = 0x27, | 186 | ATA_CMD_READ_NATIVE_MAX_EXT = 0x27, |
diff --git a/include/linux/libata.h b/include/linux/libata.h index 6fd24e03622e..439d40f86c55 100644 --- a/include/linux/libata.h +++ b/include/linux/libata.h | |||
@@ -138,6 +138,7 @@ enum { | |||
138 | ATA_DFLAG_PIO = (1 << 12), /* device limited to PIO mode */ | 138 | ATA_DFLAG_PIO = (1 << 12), /* device limited to PIO mode */ |
139 | ATA_DFLAG_NCQ_OFF = (1 << 13), /* device limited to non-NCQ mode */ | 139 | ATA_DFLAG_NCQ_OFF = (1 << 13), /* device limited to non-NCQ mode */ |
140 | ATA_DFLAG_SPUNDOWN = (1 << 14), /* XXX: for spindown_compat */ | 140 | ATA_DFLAG_SPUNDOWN = (1 << 14), /* XXX: for spindown_compat */ |
141 | ATA_DFLAG_SLEEPING = (1 << 15), /* device is sleeping */ | ||
141 | ATA_DFLAG_INIT_MASK = (1 << 16) - 1, | 142 | ATA_DFLAG_INIT_MASK = (1 << 16) - 1, |
142 | 143 | ||
143 | ATA_DFLAG_DETACH = (1 << 16), | 144 | ATA_DFLAG_DETACH = (1 << 16), |
@@ -234,6 +235,13 @@ enum { | |||
234 | ATA_TMOUT_INTERNAL = 30 * HZ, | 235 | ATA_TMOUT_INTERNAL = 30 * HZ, |
235 | ATA_TMOUT_INTERNAL_QUICK = 5 * HZ, | 236 | ATA_TMOUT_INTERNAL_QUICK = 5 * HZ, |
236 | 237 | ||
238 | /* FIXME: GoVault needs 2s but we can't afford that without | ||
239 | * parallel probing. 800ms is enough for iVDR disk | ||
240 | * HHD424020F7SV00. Increase to 2secs when parallel probing | ||
241 | * is in place. | ||
242 | */ | ||
243 | ATA_TMOUT_FF_WAIT = 4 * HZ / 5, | ||
244 | |||
237 | /* ATA bus states */ | 245 | /* ATA bus states */ |
238 | BUS_UNKNOWN = 0, | 246 | BUS_UNKNOWN = 0, |
239 | BUS_DMA = 1, | 247 | BUS_DMA = 1, |
@@ -799,6 +807,7 @@ extern void ata_host_resume(struct ata_host *host); | |||
799 | extern int ata_ratelimit(void); | 807 | extern int ata_ratelimit(void); |
800 | extern int ata_busy_sleep(struct ata_port *ap, | 808 | extern int ata_busy_sleep(struct ata_port *ap, |
801 | unsigned long timeout_pat, unsigned long timeout); | 809 | unsigned long timeout_pat, unsigned long timeout); |
810 | extern void ata_wait_after_reset(struct ata_port *ap, unsigned long deadline); | ||
802 | extern int ata_wait_ready(struct ata_port *ap, unsigned long deadline); | 811 | extern int ata_wait_ready(struct ata_port *ap, unsigned long deadline); |
803 | extern void ata_port_queue_task(struct ata_port *ap, work_func_t fn, | 812 | extern void ata_port_queue_task(struct ata_port *ap, work_func_t fn, |
804 | void *data, unsigned long delay); | 813 | void *data, unsigned long delay); |