summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/scsi/scsi_device.h5
-rw-r--r--include/scsi/scsi_request.h15
2 files changed, 20 insertions, 0 deletions
diff --git a/include/scsi/scsi_device.h b/include/scsi/scsi_device.h
index d19cd9797544..c49c124fde74 100644
--- a/include/scsi/scsi_device.h
+++ b/include/scsi/scsi_device.h
@@ -7,6 +7,7 @@
struct request_queue;
struct scsi_cmnd;
+struct scsi_mode_data;
struct scsi_device {
@@ -103,4 +104,8 @@ extern int scsi_track_queue_full(struct scsi_device *, int);
extern int scsi_set_medium_removal(struct scsi_device *, char);
+extern int scsi_mode_sense(struct scsi_device *sdev, int dbd, int modepage,
+ unsigned char *buffer, int len, int timeout,
+ int retries, struct scsi_mode_data *data);
+
#endif /* _SCSI_SCSI_DEVICE_H */
diff --git a/include/scsi/scsi_request.h b/include/scsi/scsi_request.h
index 17cfe3f71d15..e1c9fb7a760e 100644
--- a/include/scsi/scsi_request.h
+++ b/include/scsi/scsi_request.h
@@ -55,4 +55,19 @@ extern void scsi_do_req(struct scsi_request *, const void *cmnd,
void (*done) (struct scsi_cmnd *),
int timeout, int retries);
+struct scsi_mode_data {
+ __u16 length;
+ __u16 block_descriptor_length;
+ __u8 medium_type;
+ __u8 device_specific;
+ __u8 header_length;
+ __u8 longlba:1;
+};
+
+extern int __scsi_mode_sense(struct scsi_request *SRpnt, int dbd,
+ int modepage, unsigned char *buffer, int len,
+ int timeout, int retries,
+ struct scsi_mode_data *data);
+
+
#endif /* _SCSI_SCSI_REQUEST_H */