diff options
Diffstat (limited to 'drivers/scsi/libata-scsi.c')
-rw-r--r-- | drivers/scsi/libata-scsi.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/drivers/scsi/libata-scsi.c b/drivers/scsi/libata-scsi.c index dd954a23b357..a1259b242b8e 100644 --- a/drivers/scsi/libata-scsi.c +++ b/drivers/scsi/libata-scsi.c | |||
@@ -41,6 +41,7 @@ | |||
41 | #include <scsi/scsi_eh.h> | 41 | #include <scsi/scsi_eh.h> |
42 | #include <scsi/scsi_device.h> | 42 | #include <scsi/scsi_device.h> |
43 | #include <scsi/scsi_request.h> | 43 | #include <scsi/scsi_request.h> |
44 | #include <scsi/scsi_transport.h> | ||
44 | #include <linux/libata.h> | 45 | #include <linux/libata.h> |
45 | #include <linux/hdreg.h> | 46 | #include <linux/hdreg.h> |
46 | #include <asm/uaccess.h> | 47 | #include <asm/uaccess.h> |
@@ -52,6 +53,7 @@ | |||
52 | typedef unsigned int (*ata_xlat_func_t)(struct ata_queued_cmd *qc, const u8 *scsicmd); | 53 | typedef unsigned int (*ata_xlat_func_t)(struct ata_queued_cmd *qc, const u8 *scsicmd); |
53 | static struct ata_device * | 54 | static struct ata_device * |
54 | ata_scsi_find_dev(struct ata_port *ap, const struct scsi_device *scsidev); | 55 | ata_scsi_find_dev(struct ata_port *ap, const struct scsi_device *scsidev); |
56 | enum scsi_eh_timer_return ata_scsi_timed_out(struct scsi_cmnd *cmd); | ||
55 | 57 | ||
56 | #define RW_RECOVERY_MPAGE 0x1 | 58 | #define RW_RECOVERY_MPAGE 0x1 |
57 | #define RW_RECOVERY_MPAGE_LEN 12 | 59 | #define RW_RECOVERY_MPAGE_LEN 12 |
@@ -92,6 +94,14 @@ static const u8 def_control_mpage[CONTROL_MPAGE_LEN] = { | |||
92 | 0, 30 /* extended self test time, see 05-359r1 */ | 94 | 0, 30 /* extended self test time, see 05-359r1 */ |
93 | }; | 95 | }; |
94 | 96 | ||
97 | /* | ||
98 | * libata transport template. libata doesn't do real transport stuff. | ||
99 | * It just needs the eh_timed_out hook. | ||
100 | */ | ||
101 | struct scsi_transport_template ata_scsi_transport_template = { | ||
102 | .eh_timed_out = ata_scsi_timed_out, | ||
103 | }; | ||
104 | |||
95 | 105 | ||
96 | static void ata_scsi_invalid_field(struct scsi_cmnd *cmd, | 106 | static void ata_scsi_invalid_field(struct scsi_cmnd *cmd, |
97 | void (*done)(struct scsi_cmnd *)) | 107 | void (*done)(struct scsi_cmnd *)) |