1/* SPDX-License-Identifier: GPL-2.0 */
2#ifndef CCISS_IOCTLH
3#define CCISS_IOCTLH
4
5#include <uapi/linux/cciss_ioctl.h>
6
7#ifdef CONFIG_COMPAT
8
9/* 32 bit compatible ioctl structs */
10typedef struct _IOCTL32_Command_struct {
11 LUNAddr_struct LUN_info;
12 RequestBlock_struct Request;
13 ErrorInfo_struct error_info;
14 WORD buf_size; /* size in bytes of the buf */
15 __u32 buf; /* 32 bit pointer to data buffer */
16} IOCTL32_Command_struct;
17
18typedef struct _BIG_IOCTL32_Command_struct {
19 LUNAddr_struct LUN_info;
20 RequestBlock_struct Request;
21 ErrorInfo_struct error_info;
22 DWORD malloc_size; /* < MAX_KMALLOC_SIZE in cciss.c */
23 DWORD buf_size; /* size in bytes of the buf */
24 /* < malloc_size * MAXSGENTRIES */
25 __u32 buf; /* 32 bit pointer to data buffer */
26} BIG_IOCTL32_Command_struct;
27
28#define CCISS_PASSTHRU32 _IOWR(CCISS_IOC_MAGIC, 11, IOCTL32_Command_struct)
29#define CCISS_BIG_PASSTHRU32 _IOWR(CCISS_IOC_MAGIC, 18, BIG_IOCTL32_Command_struct)
30
31#endif /* CONFIG_COMPAT */
32#endif
33