diff options
Diffstat (limited to 'drivers/scsi/libata.h')
| -rw-r--r-- | drivers/scsi/libata.h | 16 |
1 files changed, 6 insertions, 10 deletions
diff --git a/drivers/scsi/libata.h b/drivers/scsi/libata.h index 0f1db892f6aa..9d951a2909ce 100644 --- a/drivers/scsi/libata.h +++ b/drivers/scsi/libata.h | |||
| @@ -39,6 +39,7 @@ struct ata_scsi_args { | |||
| 39 | 39 | ||
| 40 | /* libata-core.c */ | 40 | /* libata-core.c */ |
| 41 | extern int atapi_enabled; | 41 | extern int atapi_enabled; |
| 42 | extern int ata_qc_complete_noop(struct ata_queued_cmd *qc, u8 drv_stat); | ||
| 42 | extern struct ata_queued_cmd *ata_qc_new_init(struct ata_port *ap, | 43 | extern struct ata_queued_cmd *ata_qc_new_init(struct ata_port *ap, |
| 43 | struct ata_device *dev); | 44 | struct ata_device *dev); |
| 44 | extern void ata_qc_free(struct ata_queued_cmd *qc); | 45 | extern void ata_qc_free(struct ata_queued_cmd *qc); |
| @@ -53,6 +54,9 @@ extern int ata_cmd_ioctl(struct scsi_device *scsidev, void __user *arg); | |||
| 53 | 54 | ||
| 54 | 55 | ||
| 55 | /* libata-scsi.c */ | 56 | /* libata-scsi.c */ |
| 57 | extern void atapi_request_sense(struct ata_port *ap, struct ata_device *dev, | ||
| 58 | struct scsi_cmnd *cmd); | ||
| 59 | extern void ata_scsi_scan_host(struct ata_port *ap); | ||
| 56 | extern int ata_scsi_error(struct Scsi_Host *host); | 60 | extern int ata_scsi_error(struct Scsi_Host *host); |
| 57 | extern unsigned int ata_scsiop_inq_std(struct ata_scsi_args *args, u8 *rbuf, | 61 | extern unsigned int ata_scsiop_inq_std(struct ata_scsi_args *args, u8 *rbuf, |
| 58 | unsigned int buflen); | 62 | unsigned int buflen); |
| @@ -77,18 +81,10 @@ extern unsigned int ata_scsiop_report_luns(struct ata_scsi_args *args, u8 *rbuf, | |||
| 77 | extern void ata_scsi_badcmd(struct scsi_cmnd *cmd, | 81 | extern void ata_scsi_badcmd(struct scsi_cmnd *cmd, |
| 78 | void (*done)(struct scsi_cmnd *), | 82 | void (*done)(struct scsi_cmnd *), |
| 79 | u8 asc, u8 ascq); | 83 | u8 asc, u8 ascq); |
| 84 | extern void ata_scsi_set_sense(struct scsi_cmnd *cmd, | ||
| 85 | u8 sk, u8 asc, u8 ascq); | ||
| 80 | extern void ata_scsi_rbuf_fill(struct ata_scsi_args *args, | 86 | extern void ata_scsi_rbuf_fill(struct ata_scsi_args *args, |
| 81 | unsigned int (*actor) (struct ata_scsi_args *args, | 87 | unsigned int (*actor) (struct ata_scsi_args *args, |
| 82 | u8 *rbuf, unsigned int buflen)); | 88 | u8 *rbuf, unsigned int buflen)); |
| 83 | 89 | ||
| 84 | static inline void ata_bad_scsiop(struct scsi_cmnd *cmd, void (*done)(struct scsi_cmnd *)) | ||
| 85 | { | ||
| 86 | ata_scsi_badcmd(cmd, done, 0x20, 0x00); | ||
| 87 | } | ||
| 88 | |||
| 89 | static inline void ata_bad_cdb(struct scsi_cmnd *cmd, void (*done)(struct scsi_cmnd *)) | ||
| 90 | { | ||
| 91 | ata_scsi_badcmd(cmd, done, 0x24, 0x00); | ||
| 92 | } | ||
| 93 | |||
| 94 | #endif /* __LIBATA_H__ */ | 90 | #endif /* __LIBATA_H__ */ |
