Import 2.3.13pre1
[davej-history.git] / include / scsi / scsi_ioctl.h
blob6ba0dd542f936b37c36c07b2a3d46eed89a3b041
1 #ifndef _SCSI_IOCTL_H
2 #define _SCSI_IOCTL_H
4 #define SCSI_IOCTL_SEND_COMMAND 1
5 #define SCSI_IOCTL_TEST_UNIT_READY 2
6 #define SCSI_IOCTL_BENCHMARK_COMMAND 3
7 #define SCSI_IOCTL_SYNC 4 /* Request synchronous parameters */
8 #define SCSI_IOCTL_START_UNIT 5
9 #define SCSI_IOCTL_STOP_UNIT 6
10 /* The door lock/unlock constants are compatible with Sun constants for
11 the cdrom */
12 #define SCSI_IOCTL_DOORLOCK 0x5380 /* lock the eject mechanism */
13 #define SCSI_IOCTL_DOORUNLOCK 0x5381 /* unlock the mechanism */
15 #define SCSI_REMOVAL_PREVENT 1
16 #define SCSI_REMOVAL_ALLOW 0
18 #ifdef __KERNEL__
21 * Structures used for scsi_ioctl et al.
24 typedef struct scsi_ioctl_command {
25 unsigned int inlen;
26 unsigned int outlen;
27 unsigned char data[0];
28 } Scsi_Ioctl_Command;
30 typedef struct scsi_idlun {
31 __u32 dev_id;
32 __u32 host_unique_id;
33 } Scsi_Idlun;
35 extern int scsi_ioctl (Scsi_Device *dev, int cmd, void *arg);
36 extern int kernel_scsi_ioctl (Scsi_Device *dev, int cmd, void *arg);
37 extern int scsi_ioctl_send_command(Scsi_Device *dev,
38 Scsi_Ioctl_Command *arg);
40 #endif
42 #endif