diff options
Diffstat (limited to 'include/linux/libata.h')
-rw-r--r-- | include/linux/libata.h | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/include/linux/libata.h b/include/linux/libata.h index 87698640c091..b2f2003b92e5 100644 --- a/include/linux/libata.h +++ b/include/linux/libata.h | |||
@@ -146,6 +146,7 @@ enum { | |||
146 | ATA_DFLAG_SLEEPING = (1 << 15), /* device is sleeping */ | 146 | ATA_DFLAG_SLEEPING = (1 << 15), /* device is sleeping */ |
147 | ATA_DFLAG_DUBIOUS_XFER = (1 << 16), /* data transfer not verified */ | 147 | ATA_DFLAG_DUBIOUS_XFER = (1 << 16), /* data transfer not verified */ |
148 | ATA_DFLAG_NO_UNLOAD = (1 << 17), /* device doesn't support unload */ | 148 | ATA_DFLAG_NO_UNLOAD = (1 << 17), /* device doesn't support unload */ |
149 | ATA_DFLAG_UNLOCK_HPA = (1 << 18), /* unlock HPA */ | ||
149 | ATA_DFLAG_INIT_MASK = (1 << 24) - 1, | 150 | ATA_DFLAG_INIT_MASK = (1 << 24) - 1, |
150 | 151 | ||
151 | ATA_DFLAG_DETACH = (1 << 24), | 152 | ATA_DFLAG_DETACH = (1 << 24), |
@@ -354,6 +355,9 @@ enum { | |||
354 | /* max tries if error condition is still set after ->error_handler */ | 355 | /* max tries if error condition is still set after ->error_handler */ |
355 | ATA_EH_MAX_TRIES = 5, | 356 | ATA_EH_MAX_TRIES = 5, |
356 | 357 | ||
358 | /* sometimes resuming a link requires several retries */ | ||
359 | ATA_LINK_RESUME_TRIES = 5, | ||
360 | |||
357 | /* how hard are we gonna try to probe/recover devices */ | 361 | /* how hard are we gonna try to probe/recover devices */ |
358 | ATA_PROBE_MAX_TRIES = 3, | 362 | ATA_PROBE_MAX_TRIES = 3, |
359 | ATA_EH_DEV_TRIES = 3, | 363 | ATA_EH_DEV_TRIES = 3, |
@@ -365,7 +369,7 @@ enum { | |||
365 | /* This should match the actual table size of | 369 | /* This should match the actual table size of |
366 | * ata_eh_cmd_timeout_table in libata-eh.c. | 370 | * ata_eh_cmd_timeout_table in libata-eh.c. |
367 | */ | 371 | */ |
368 | ATA_EH_CMD_TIMEOUT_TABLE_SIZE = 5, | 372 | ATA_EH_CMD_TIMEOUT_TABLE_SIZE = 6, |
369 | 373 | ||
370 | /* Horkage types. May be set by libata or controller on drives | 374 | /* Horkage types. May be set by libata or controller on drives |
371 | (some horkage may be drive/controller pair dependant */ | 375 | (some horkage may be drive/controller pair dependant */ |
@@ -595,6 +599,7 @@ struct ata_device { | |||
595 | unsigned int horkage; /* List of broken features */ | 599 | unsigned int horkage; /* List of broken features */ |
596 | unsigned long flags; /* ATA_DFLAG_xxx */ | 600 | unsigned long flags; /* ATA_DFLAG_xxx */ |
597 | struct scsi_device *sdev; /* attached SCSI device */ | 601 | struct scsi_device *sdev; /* attached SCSI device */ |
602 | void *private_data; | ||
598 | #ifdef CONFIG_ATA_ACPI | 603 | #ifdef CONFIG_ATA_ACPI |
599 | acpi_handle acpi_handle; | 604 | acpi_handle acpi_handle; |
600 | union acpi_object *gtf_cache; | 605 | union acpi_object *gtf_cache; |
@@ -853,6 +858,7 @@ struct ata_port_operations { | |||
853 | unsigned int (*sff_data_xfer)(struct ata_device *dev, | 858 | unsigned int (*sff_data_xfer)(struct ata_device *dev, |
854 | unsigned char *buf, unsigned int buflen, int rw); | 859 | unsigned char *buf, unsigned int buflen, int rw); |
855 | u8 (*sff_irq_on)(struct ata_port *); | 860 | u8 (*sff_irq_on)(struct ata_port *); |
861 | bool (*sff_irq_check)(struct ata_port *); | ||
856 | void (*sff_irq_clear)(struct ata_port *); | 862 | void (*sff_irq_clear)(struct ata_port *); |
857 | 863 | ||
858 | void (*bmdma_setup)(struct ata_queued_cmd *qc); | 864 | void (*bmdma_setup)(struct ata_queued_cmd *qc); |
@@ -1023,7 +1029,7 @@ extern int ata_std_bios_param(struct scsi_device *sdev, | |||
1023 | extern int ata_scsi_slave_config(struct scsi_device *sdev); | 1029 | extern int ata_scsi_slave_config(struct scsi_device *sdev); |
1024 | extern void ata_scsi_slave_destroy(struct scsi_device *sdev); | 1030 | extern void ata_scsi_slave_destroy(struct scsi_device *sdev); |
1025 | extern int ata_scsi_change_queue_depth(struct scsi_device *sdev, | 1031 | extern int ata_scsi_change_queue_depth(struct scsi_device *sdev, |
1026 | int queue_depth); | 1032 | int queue_depth, int reason); |
1027 | extern struct ata_device *ata_dev_pair(struct ata_device *adev); | 1033 | extern struct ata_device *ata_dev_pair(struct ata_device *adev); |
1028 | extern int ata_do_set_mode(struct ata_link *link, struct ata_device **r_failed_dev); | 1034 | extern int ata_do_set_mode(struct ata_link *link, struct ata_device **r_failed_dev); |
1029 | 1035 | ||
@@ -1638,8 +1644,8 @@ extern int ata_pci_sff_activate_host(struct ata_host *host, | |||
1638 | irq_handler_t irq_handler, | 1644 | irq_handler_t irq_handler, |
1639 | struct scsi_host_template *sht); | 1645 | struct scsi_host_template *sht); |
1640 | extern int ata_pci_sff_init_one(struct pci_dev *pdev, | 1646 | extern int ata_pci_sff_init_one(struct pci_dev *pdev, |
1641 | const struct ata_port_info * const * ppi, | 1647 | const struct ata_port_info * const * ppi, |
1642 | struct scsi_host_template *sht, void *host_priv); | 1648 | struct scsi_host_template *sht, void *host_priv, int hflags); |
1643 | #endif /* CONFIG_PCI */ | 1649 | #endif /* CONFIG_PCI */ |
1644 | 1650 | ||
1645 | /** | 1651 | /** |