xref: /openbmc/linux/include/linux/cciss_ioctl.h (revision 498495dba268b20e8eadd7fe93c140c68b6cc9d2)
1*b2441318SGreg Kroah-Hartman /* SPDX-License-Identifier: GPL-2.0 */
21da177e4SLinus Torvalds #ifndef CCISS_IOCTLH
31da177e4SLinus Torvalds #define CCISS_IOCTLH
41da177e4SLinus Torvalds 
5607ca46eSDavid Howells #include <uapi/linux/cciss_ioctl.h>
61da177e4SLinus Torvalds 
71da177e4SLinus Torvalds #ifdef CONFIG_COMPAT
81da177e4SLinus Torvalds 
91da177e4SLinus Torvalds /* 32 bit compatible ioctl structs */
101da177e4SLinus Torvalds typedef struct _IOCTL32_Command_struct {
111da177e4SLinus Torvalds   LUNAddr_struct	   LUN_info;
121da177e4SLinus Torvalds   RequestBlock_struct      Request;
131da177e4SLinus Torvalds   ErrorInfo_struct  	   error_info;
141da177e4SLinus Torvalds   WORD			   buf_size;  /* size in bytes of the buf */
151da177e4SLinus Torvalds   __u32			   buf; /* 32 bit pointer to data buffer */
161da177e4SLinus Torvalds } IOCTL32_Command_struct;
171da177e4SLinus Torvalds 
181da177e4SLinus Torvalds typedef struct _BIG_IOCTL32_Command_struct {
191da177e4SLinus Torvalds   LUNAddr_struct	   LUN_info;
201da177e4SLinus Torvalds   RequestBlock_struct      Request;
211da177e4SLinus Torvalds   ErrorInfo_struct  	   error_info;
221da177e4SLinus Torvalds   DWORD			   malloc_size; /* < MAX_KMALLOC_SIZE in cciss.c */
231da177e4SLinus Torvalds   DWORD			   buf_size;    /* size in bytes of the buf */
241da177e4SLinus Torvalds   				        /* < malloc_size * MAXSGENTRIES */
251da177e4SLinus Torvalds   __u32 		buf;	/* 32 bit pointer to data buffer */
261da177e4SLinus Torvalds } BIG_IOCTL32_Command_struct;
271da177e4SLinus Torvalds 
281da177e4SLinus Torvalds #define CCISS_PASSTHRU32   _IOWR(CCISS_IOC_MAGIC, 11, IOCTL32_Command_struct)
291da177e4SLinus Torvalds #define CCISS_BIG_PASSTHRU32 _IOWR(CCISS_IOC_MAGIC, 18, BIG_IOCTL32_Command_struct)
301da177e4SLinus Torvalds 
311da177e4SLinus Torvalds #endif /* CONFIG_COMPAT */
321da177e4SLinus Torvalds #endif
33