diff options
Diffstat (limited to 'include/linux/ide.h')
-rw-r--r-- | include/linux/ide.h | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/include/linux/ide.h b/include/linux/ide.h index e4135d6e0556..3239d1c10acb 100644 --- a/include/linux/ide.h +++ b/include/linux/ide.h | |||
@@ -125,8 +125,8 @@ struct ide_io_ports { | |||
125 | * Timeouts for various operations: | 125 | * Timeouts for various operations: |
126 | */ | 126 | */ |
127 | enum { | 127 | enum { |
128 | /* spec allows up to 20ms */ | 128 | /* spec allows up to 20ms, but CF cards and SSD drives need more */ |
129 | WAIT_DRQ = HZ / 10, /* 100ms */ | 129 | WAIT_DRQ = 1 * HZ, /* 1s */ |
130 | /* some laptops are very slow */ | 130 | /* some laptops are very slow */ |
131 | WAIT_READY = 5 * HZ, /* 5s */ | 131 | WAIT_READY = 5 * HZ, /* 5s */ |
132 | /* should be less than 3ms (?), if all ATAPI CD is closed at boot */ | 132 | /* should be less than 3ms (?), if all ATAPI CD is closed at boot */ |
@@ -515,6 +515,8 @@ struct ide_drive_s { | |||
515 | u8 init_speed; /* transfer rate set at boot */ | 515 | u8 init_speed; /* transfer rate set at boot */ |
516 | u8 current_speed; /* current transfer rate set */ | 516 | u8 current_speed; /* current transfer rate set */ |
517 | u8 desired_speed; /* desired transfer rate set */ | 517 | u8 desired_speed; /* desired transfer rate set */ |
518 | u8 pio_mode; /* for ->set_pio_mode _only_ */ | ||
519 | u8 dma_mode; /* for ->dma_pio_mode _only_ */ | ||
518 | u8 dn; /* now wide spread use */ | 520 | u8 dn; /* now wide spread use */ |
519 | u8 acoustic; /* acoustic management */ | 521 | u8 acoustic; /* acoustic management */ |
520 | u8 media; /* disk, cdrom, tape, floppy, ... */ | 522 | u8 media; /* disk, cdrom, tape, floppy, ... */ |
@@ -622,8 +624,8 @@ extern const struct ide_tp_ops default_tp_ops; | |||
622 | */ | 624 | */ |
623 | struct ide_port_ops { | 625 | struct ide_port_ops { |
624 | void (*init_dev)(ide_drive_t *); | 626 | void (*init_dev)(ide_drive_t *); |
625 | void (*set_pio_mode)(ide_drive_t *, const u8); | 627 | void (*set_pio_mode)(struct hwif_s *, ide_drive_t *); |
626 | void (*set_dma_mode)(ide_drive_t *, const u8); | 628 | void (*set_dma_mode)(struct hwif_s *, ide_drive_t *); |
627 | int (*reset_poll)(ide_drive_t *); | 629 | int (*reset_poll)(ide_drive_t *); |
628 | void (*pre_reset)(ide_drive_t *); | 630 | void (*pre_reset)(ide_drive_t *); |
629 | void (*resetproc)(ide_drive_t *); | 631 | void (*resetproc)(ide_drive_t *); |
@@ -1167,6 +1169,7 @@ extern void ide_stall_queue(ide_drive_t *drive, unsigned long timeout); | |||
1167 | extern void ide_timer_expiry(unsigned long); | 1169 | extern void ide_timer_expiry(unsigned long); |
1168 | extern irqreturn_t ide_intr(int irq, void *dev_id); | 1170 | extern irqreturn_t ide_intr(int irq, void *dev_id); |
1169 | extern void do_ide_request(struct request_queue *); | 1171 | extern void do_ide_request(struct request_queue *); |
1172 | extern void ide_requeue_and_plug(ide_drive_t *drive, struct request *rq); | ||
1170 | 1173 | ||
1171 | void ide_init_disk(struct gendisk *, ide_drive_t *); | 1174 | void ide_init_disk(struct gendisk *, ide_drive_t *); |
1172 | 1175 | ||
@@ -1494,7 +1497,6 @@ int ide_timing_compute(ide_drive_t *, u8, struct ide_timing *, int, int); | |||
1494 | #ifdef CONFIG_IDE_XFER_MODE | 1497 | #ifdef CONFIG_IDE_XFER_MODE |
1495 | int ide_scan_pio_blacklist(char *); | 1498 | int ide_scan_pio_blacklist(char *); |
1496 | const char *ide_xfer_verbose(u8); | 1499 | const char *ide_xfer_verbose(u8); |
1497 | u8 ide_get_best_pio_mode(ide_drive_t *, u8, u8); | ||
1498 | int ide_pio_need_iordy(ide_drive_t *, const u8); | 1500 | int ide_pio_need_iordy(ide_drive_t *, const u8); |
1499 | int ide_set_pio_mode(ide_drive_t *, u8); | 1501 | int ide_set_pio_mode(ide_drive_t *, u8); |
1500 | int ide_set_dma_mode(ide_drive_t *, u8); | 1502 | int ide_set_dma_mode(ide_drive_t *, u8); |