root/include/uapi/linux/cciss_ioctl.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


   1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
   2 #ifndef _UAPICCISS_IOCTLH
   3 #define _UAPICCISS_IOCTLH
   4 
   5 #include <linux/types.h>
   6 #include <linux/ioctl.h>
   7 #include <linux/cciss_defs.h>
   8 
   9 #define CCISS_IOC_MAGIC 'B'
  10 
  11 
  12 typedef struct _cciss_pci_info_struct
  13 {
  14         unsigned char   bus;
  15         unsigned char   dev_fn;
  16         unsigned short  domain;
  17         __u32           board_id;
  18 } cciss_pci_info_struct; 
  19 
  20 typedef struct _cciss_coalint_struct
  21 {
  22         __u32  delay;
  23         __u32  count;
  24 } cciss_coalint_struct;
  25 
  26 typedef char NodeName_type[16];
  27 
  28 typedef __u32 Heartbeat_type;
  29 
  30 #define CISS_PARSCSIU2  0x0001
  31 #define CISS_PARCSCIU3  0x0002
  32 #define CISS_FIBRE1G    0x0100
  33 #define CISS_FIBRE2G    0x0200
  34 typedef __u32 BusTypes_type;
  35 
  36 typedef char FirmwareVer_type[4];
  37 typedef __u32 DriverVer_type;
  38 
  39 #define MAX_KMALLOC_SIZE 128000
  40 
  41 typedef struct _IOCTL_Command_struct {
  42   LUNAddr_struct           LUN_info;
  43   RequestBlock_struct      Request;
  44   ErrorInfo_struct         error_info; 
  45   WORD                     buf_size;  /* size in bytes of the buf */
  46   BYTE                     __user *buf;
  47 } IOCTL_Command_struct;
  48 
  49 typedef struct _BIG_IOCTL_Command_struct {
  50   LUNAddr_struct           LUN_info;
  51   RequestBlock_struct      Request;
  52   ErrorInfo_struct         error_info;
  53   DWORD                    malloc_size; /* < MAX_KMALLOC_SIZE in cciss.c */
  54   DWORD                    buf_size;    /* size in bytes of the buf */
  55                                         /* < malloc_size * MAXSGENTRIES */
  56   BYTE                     __user *buf;
  57 } BIG_IOCTL_Command_struct;
  58 
  59 typedef struct _LogvolInfo_struct{
  60         __u32   LunID;
  61         int     num_opens;  /* number of opens on the logical volume */
  62         int     num_parts;  /* number of partitions configured on logvol */
  63 } LogvolInfo_struct;
  64 
  65 #define CCISS_GETPCIINFO _IOR(CCISS_IOC_MAGIC, 1, cciss_pci_info_struct)
  66 
  67 #define CCISS_GETINTINFO _IOR(CCISS_IOC_MAGIC, 2, cciss_coalint_struct)
  68 #define CCISS_SETINTINFO _IOW(CCISS_IOC_MAGIC, 3, cciss_coalint_struct)
  69 
  70 #define CCISS_GETNODENAME _IOR(CCISS_IOC_MAGIC, 4, NodeName_type)
  71 #define CCISS_SETNODENAME _IOW(CCISS_IOC_MAGIC, 5, NodeName_type)
  72 
  73 #define CCISS_GETHEARTBEAT _IOR(CCISS_IOC_MAGIC, 6, Heartbeat_type)
  74 #define CCISS_GETBUSTYPES  _IOR(CCISS_IOC_MAGIC, 7, BusTypes_type)
  75 #define CCISS_GETFIRMVER   _IOR(CCISS_IOC_MAGIC, 8, FirmwareVer_type)
  76 #define CCISS_GETDRIVVER   _IOR(CCISS_IOC_MAGIC, 9, DriverVer_type)
  77 #define CCISS_REVALIDVOLS  _IO(CCISS_IOC_MAGIC, 10)
  78 #define CCISS_PASSTHRU     _IOWR(CCISS_IOC_MAGIC, 11, IOCTL_Command_struct)
  79 #define CCISS_DEREGDISK    _IO(CCISS_IOC_MAGIC, 12)
  80 
  81 /* no longer used... use REGNEWD instead */ 
  82 #define CCISS_REGNEWDISK  _IOW(CCISS_IOC_MAGIC, 13, int)
  83 
  84 #define CCISS_REGNEWD      _IO(CCISS_IOC_MAGIC, 14)
  85 #define CCISS_RESCANDISK   _IO(CCISS_IOC_MAGIC, 16)
  86 #define CCISS_GETLUNINFO   _IOR(CCISS_IOC_MAGIC, 17, LogvolInfo_struct)
  87 #define CCISS_BIG_PASSTHRU _IOWR(CCISS_IOC_MAGIC, 18, BIG_IOCTL_Command_struct)
  88 
  89 #endif /* _UAPICCISS_IOCTLH */

/* [<][>][^][v][top][bottom][index][help] */