diff options
author | Gwendal Grignou <gwendal@google.com> | 2010-05-25 15:31:38 -0400 |
---|---|---|
committer | Jeff Garzik <jgarzik@redhat.com> | 2010-10-21 20:21:03 -0400 |
commit | d9027470b88631d0956ac37cdadfdeb9cdcf2c99 (patch) | |
tree | b15273e88431ba734a24965dfc81132ac13bc8bd /drivers/ata/libata.h | |
parent | f6f94e2ab1b33f0082ac22d71f66385a60d8157f (diff) |
[libata] Add ATA transport class
This is a scheleton for libata transport class.
All information is read only, exporting information from libata:
- ata_port class: one per ATA port
- ata_link class: one per ATA port or 15 for SATA Port Multiplier
- ata_device class: up to 2 for PATA link, usually one for SATA.
Signed-off-by: Gwendal Grignou <gwendal@google.com>
Reviewed-by: Grant Grundler <grundler@google.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
Diffstat (limited to 'drivers/ata/libata.h')
-rw-r--r-- | drivers/ata/libata.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/ata/libata.h b/drivers/ata/libata.h index 9ce1ecc63e39..142102b94df5 100644 --- a/drivers/ata/libata.h +++ b/drivers/ata/libata.h | |||
@@ -102,6 +102,7 @@ extern int ata_cmd_ioctl(struct scsi_device *scsidev, void __user *arg); | |||
102 | extern struct ata_port *ata_port_alloc(struct ata_host *host); | 102 | extern struct ata_port *ata_port_alloc(struct ata_host *host); |
103 | extern void ata_dev_enable_pm(struct ata_device *dev, enum link_pm policy); | 103 | extern void ata_dev_enable_pm(struct ata_device *dev, enum link_pm policy); |
104 | extern void ata_lpm_schedule(struct ata_port *ap, enum link_pm); | 104 | extern void ata_lpm_schedule(struct ata_port *ap, enum link_pm); |
105 | extern const char *sata_spd_string(unsigned int spd); | ||
105 | 106 | ||
106 | /* libata-acpi.c */ | 107 | /* libata-acpi.c */ |
107 | #ifdef CONFIG_ATA_ACPI | 108 | #ifdef CONFIG_ATA_ACPI |
@@ -137,6 +138,9 @@ extern void ata_scsi_hotplug(struct work_struct *work); | |||
137 | extern void ata_schedule_scsi_eh(struct Scsi_Host *shost); | 138 | extern void ata_schedule_scsi_eh(struct Scsi_Host *shost); |
138 | extern void ata_scsi_dev_rescan(struct work_struct *work); | 139 | extern void ata_scsi_dev_rescan(struct work_struct *work); |
139 | extern int ata_bus_probe(struct ata_port *ap); | 140 | extern int ata_bus_probe(struct ata_port *ap); |
141 | extern int ata_scsi_user_scan(struct Scsi_Host *shost, unsigned int channel, | ||
142 | unsigned int id, unsigned int lun); | ||
143 | |||
140 | 144 | ||
141 | /* libata-eh.c */ | 145 | /* libata-eh.c */ |
142 | extern unsigned long ata_internal_cmd_timeout(struct ata_device *dev, u8 cmd); | 146 | extern unsigned long ata_internal_cmd_timeout(struct ata_device *dev, u8 cmd); |
@@ -164,6 +168,9 @@ extern int ata_eh_recover(struct ata_port *ap, ata_prereset_fn_t prereset, | |||
164 | ata_postreset_fn_t postreset, | 168 | ata_postreset_fn_t postreset, |
165 | struct ata_link **r_failed_disk); | 169 | struct ata_link **r_failed_disk); |
166 | extern void ata_eh_finish(struct ata_port *ap); | 170 | extern void ata_eh_finish(struct ata_port *ap); |
171 | extern int ata_ering_map(struct ata_ering *ering, | ||
172 | int (*map_fn)(struct ata_ering_entry *, void *), | ||
173 | void *arg); | ||
167 | 174 | ||
168 | /* libata-pmp.c */ | 175 | /* libata-pmp.c */ |
169 | #ifdef CONFIG_SATA_PMP | 176 | #ifdef CONFIG_SATA_PMP |