Skip to content

Commit

Permalink
UAPI: scsi: move ioctl related information
Browse files Browse the repository at this point in the history
The ioctl information should be in header files that expose it
to userspace.

Change-Id: Iabf1e53a1357c2ce22ecdc8dc0270377759effc8
Signed-off-by: Krishna Konda <[email protected]>
  • Loading branch information
Krishna Konda committed Oct 15, 2014
1 parent ff9ee91 commit 560700b
Show file tree
Hide file tree
Showing 2 changed files with 21 additions and 24 deletions.
21 changes: 0 additions & 21 deletions include/scsi/scsi.h
Original file line number Diff line number Diff line change
Expand Up @@ -549,27 +549,6 @@ static inline int scsi_is_wlun(unsigned int lun)
#define SCSI_INQ_PQ_NOT_CON 0x01
#define SCSI_INQ_PQ_NOT_CAP 0x03


/*
* Here are some scsi specific ioctl commands which are sometimes useful.
*
* Note that include/linux/cdrom.h also defines IOCTL 0x5300 - 0x5395
*/

/* Used to obtain PUN and LUN info. Conflicts with CDROMAUDIOBUFSIZ */
#define SCSI_IOCTL_GET_IDLUN 0x5382

/* 0x5383 and 0x5384 were used for SCSI_IOCTL_TAGGED_{ENABLE,DISABLE} */

/* Used to obtain the host number of a device. */
#define SCSI_IOCTL_PROBE_HOST 0x5385

/* Used to obtain the bus number for a device */
#define SCSI_IOCTL_GET_BUS_NUMBER 0x5386

/* Used to obtain the PCI location of a device */
#define SCSI_IOCTL_GET_PCI 0x5387

/* Pull a u32 out of a SCSI message (using BE SCSI conventions) */
static inline __u32 scsi_to_u32(__u8 *ptr)
{
Expand Down
24 changes: 21 additions & 3 deletions include/uapi/scsi/scsi_ioctl.h
Original file line number Diff line number Diff line change
Expand Up @@ -15,9 +15,25 @@
#define SCSI_REMOVAL_PREVENT 1
#define SCSI_REMOVAL_ALLOW 0

#ifdef __KERNEL__
/*
* Here are some scsi specific ioctl commands which are sometimes useful.
*
* Note that include/linux/cdrom.h also defines IOCTL 0x5300 - 0x5395
*/

struct scsi_device;
/* Used to obtain PUN and LUN info. Conflicts with CDROMAUDIOBUFSIZ */
#define SCSI_IOCTL_GET_IDLUN 0x5382

/* 0x5383 and 0x5384 were used for SCSI_IOCTL_TAGGED_{ENABLE,DISABLE} */

/* Used to obtain the host number of a device. */
#define SCSI_IOCTL_PROBE_HOST 0x5385

/* Used to obtain the bus number for a device */
#define SCSI_IOCTL_GET_BUS_NUMBER 0x5386

/* Used to obtain the PCI location of a device */
#define SCSI_IOCTL_GET_PCI 0x5387

/*
* Structures used for scsi_ioctl et al.
Expand All @@ -40,9 +56,11 @@ typedef struct scsi_fctargaddress {
unsigned char host_wwn[8]; // include NULL term.
} Scsi_FCTargAddress;

#ifdef __KERNEL__
struct scsi_device;

extern int scsi_ioctl(struct scsi_device *, int, void __user *);
extern int scsi_nonblockable_ioctl(struct scsi_device *sdev, int cmd,
void __user *arg, int ndelay);

#endif /* __KERNEL__ */
#endif /* _SCSI_IOCTL_H */

0 comments on commit 560700b

Please sign in to comment.