Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Enumerations
hptiop.h File Reference

Go to the source code of this file.

Data Structures

struct  hpt_iopmu_itl
 
struct  hpt_iopmu_mv
 
struct  hpt_iopmv_regs
 
struct  hpt_iop_request_header
 
struct  hpt_iop_request_get_config
 
struct  hpt_iop_request_set_config
 
struct  hpt_iopsg
 
struct  hpt_iop_request_block_command
 
struct  hpt_iop_request_scsi_command
 
struct  hpt_iop_request_ioctl_command
 
struct  hptiop_request
 
struct  hpt_scsi_pointer
 
struct  hptiop_hba
 
struct  hpt_ioctl_k
 
struct  hptiop_adapter_ops
 

Macros

#define IOPMU_QUEUE_EMPTY   0xffffffff
 
#define IOPMU_QUEUE_MASK_HOST_BITS   0xf0000000
 
#define IOPMU_QUEUE_ADDR_HOST_BIT   0x80000000
 
#define IOPMU_QUEUE_REQUEST_SIZE_BIT   0x40000000
 
#define IOPMU_QUEUE_REQUEST_RESULT_BIT   0x40000000
 
#define IOPMU_OUTBOUND_INT_MSG0   1
 
#define IOPMU_OUTBOUND_INT_MSG1   2
 
#define IOPMU_OUTBOUND_INT_DOORBELL   4
 
#define IOPMU_OUTBOUND_INT_POSTQUEUE   8
 
#define IOPMU_OUTBOUND_INT_PCI   0x10
 
#define IOPMU_INBOUND_INT_MSG0   1
 
#define IOPMU_INBOUND_INT_MSG1   2
 
#define IOPMU_INBOUND_INT_DOORBELL   4
 
#define IOPMU_INBOUND_INT_ERROR   8
 
#define IOPMU_INBOUND_INT_POSTQUEUE   0x10
 
#define MVIOP_QUEUE_LEN   512
 
#define MVIOP_MU_QUEUE_ADDR_HOST_MASK   (~(0x1full))
 
#define MVIOP_MU_QUEUE_ADDR_HOST_BIT   4
 
#define MVIOP_MU_QUEUE_ADDR_IOP_HIGH32   0xffffffff
 
#define MVIOP_MU_QUEUE_REQUEST_RESULT_BIT   1
 
#define MVIOP_MU_QUEUE_REQUEST_RETURN_CONTEXT   2
 
#define MVIOP_MU_INBOUND_INT_MSG   1
 
#define MVIOP_MU_INBOUND_INT_POSTQUEUE   2
 
#define MVIOP_MU_OUTBOUND_INT_MSG   1
 
#define MVIOP_MU_OUTBOUND_INT_POSTQUEUE   2
 
#define IOP_REQUEST_FLAG_SYNC_REQUEST   1
 
#define IOP_REQUEST_FLAG_BIST_REQUEST   2
 
#define IOP_REQUEST_FLAG_REMAPPED   4
 
#define IOP_REQUEST_FLAG_OUTPUT_CONTEXT   8
 
#define IOP_BLOCK_COMMAND_READ   1
 
#define IOP_BLOCK_COMMAND_WRITE   2
 
#define IOP_BLOCK_COMMAND_VERIFY   3
 
#define IOP_BLOCK_COMMAND_FLUSH   4
 
#define IOP_BLOCK_COMMAND_SHUTDOWN   5
 
#define HPTIOP_MAX_REQUESTS   256u
 
#define HPT_SCP(scp)   ((struct hpt_scsi_pointer *)&(scp)->SCp)
 
#define HPT_IOCTL_RESULT_OK   0
 
#define HPT_IOCTL_RESULT_FAILED   (-1)
 
#define dprintk(fmt, args...)
 

Enumerations

enum  hpt_iopmu_message {
  IOPMU_INBOUND_MSG0_NOP = 0, IOPMU_INBOUND_MSG0_RESET, IOPMU_INBOUND_MSG0_FLUSH, IOPMU_INBOUND_MSG0_SHUTDOWN,
  IOPMU_INBOUND_MSG0_STOP_BACKGROUND_TASK, IOPMU_INBOUND_MSG0_START_BACKGROUND_TASK, IOPMU_INBOUND_MSG0_MAX = 0xff, IOPMU_OUTBOUND_MSG0_REGISTER_DEVICE_0 = 0x100,
  IOPMU_OUTBOUND_MSG0_REGISTER_DEVICE_MAX = 0x1ff, IOPMU_OUTBOUND_MSG0_UNREGISTER_DEVICE_0 = 0x200, IOPMU_OUTBOUND_MSG0_UNREGISTER_DEVICE_MAX = 0x2ff, IOPMU_OUTBOUND_MSG0_REVALIDATE_DEVICE_0 = 0x300,
  IOPMU_OUTBOUND_MSG0_REVALIDATE_DEVICE_MAX = 0x3ff
}
 
enum  hpt_iop_request_type {
  IOP_REQUEST_TYPE_GET_CONFIG = 0, IOP_REQUEST_TYPE_SET_CONFIG, IOP_REQUEST_TYPE_BLOCK_COMMAND, IOP_REQUEST_TYPE_SCSI_COMMAND,
  IOP_REQUEST_TYPE_IOCTL_COMMAND, IOP_REQUEST_TYPE_MAX
}
 
enum  hpt_iop_result_type {
  IOP_RESULT_PENDING = 0, IOP_RESULT_SUCCESS, IOP_RESULT_FAIL, IOP_RESULT_BUSY,
  IOP_RESULT_RESET, IOP_RESULT_INVALID_REQUEST, IOP_RESULT_BAD_TARGET, IOP_RESULT_CHECK_CONDITION
}
 

Macro Definition Documentation

#define dprintk (   fmt,
  args... 
)

Definition at line 309 of file hptiop.h.

#define HPT_IOCTL_RESULT_FAILED   (-1)

Definition at line 304 of file hptiop.h.

#define HPT_IOCTL_RESULT_OK   0

Definition at line 303 of file hptiop.h.

#define HPT_SCP (   scp)    ((struct hpt_scsi_pointer *)&(scp)->SCp)

Definition at line 224 of file hptiop.h.

#define HPTIOP_MAX_REQUESTS   256u

Definition at line 208 of file hptiop.h.

#define IOP_BLOCK_COMMAND_FLUSH   4

Definition at line 184 of file hptiop.h.

#define IOP_BLOCK_COMMAND_READ   1

Definition at line 181 of file hptiop.h.

#define IOP_BLOCK_COMMAND_SHUTDOWN   5

Definition at line 185 of file hptiop.h.

#define IOP_BLOCK_COMMAND_VERIFY   3

Definition at line 183 of file hptiop.h.

#define IOP_BLOCK_COMMAND_WRITE   2

Definition at line 182 of file hptiop.h.

#define IOP_REQUEST_FLAG_BIST_REQUEST   2

Definition at line 118 of file hptiop.h.

#define IOP_REQUEST_FLAG_OUTPUT_CONTEXT   8

Definition at line 120 of file hptiop.h.

#define IOP_REQUEST_FLAG_REMAPPED   4

Definition at line 119 of file hptiop.h.

#define IOP_REQUEST_FLAG_SYNC_REQUEST   1

Definition at line 117 of file hptiop.h.

#define IOPMU_INBOUND_INT_DOORBELL   4

Definition at line 52 of file hptiop.h.

#define IOPMU_INBOUND_INT_ERROR   8

Definition at line 53 of file hptiop.h.

#define IOPMU_INBOUND_INT_MSG0   1

Definition at line 50 of file hptiop.h.

#define IOPMU_INBOUND_INT_MSG1   2

Definition at line 51 of file hptiop.h.

#define IOPMU_INBOUND_INT_POSTQUEUE   0x10

Definition at line 54 of file hptiop.h.

#define IOPMU_OUTBOUND_INT_DOORBELL   4

Definition at line 46 of file hptiop.h.

#define IOPMU_OUTBOUND_INT_MSG0   1

Definition at line 44 of file hptiop.h.

#define IOPMU_OUTBOUND_INT_MSG1   2

Definition at line 45 of file hptiop.h.

#define IOPMU_OUTBOUND_INT_PCI   0x10

Definition at line 48 of file hptiop.h.

#define IOPMU_OUTBOUND_INT_POSTQUEUE   8

Definition at line 47 of file hptiop.h.

#define IOPMU_QUEUE_ADDR_HOST_BIT   0x80000000

Definition at line 40 of file hptiop.h.

#define IOPMU_QUEUE_EMPTY   0xffffffff

Definition at line 38 of file hptiop.h.

#define IOPMU_QUEUE_MASK_HOST_BITS   0xf0000000

Definition at line 39 of file hptiop.h.

#define IOPMU_QUEUE_REQUEST_RESULT_BIT   0x40000000

Definition at line 42 of file hptiop.h.

#define IOPMU_QUEUE_REQUEST_SIZE_BIT   0x40000000

Definition at line 41 of file hptiop.h.

#define MVIOP_MU_INBOUND_INT_MSG   1

Definition at line 85 of file hptiop.h.

#define MVIOP_MU_INBOUND_INT_POSTQUEUE   2

Definition at line 86 of file hptiop.h.

#define MVIOP_MU_OUTBOUND_INT_MSG   1

Definition at line 87 of file hptiop.h.

#define MVIOP_MU_OUTBOUND_INT_POSTQUEUE   2

Definition at line 88 of file hptiop.h.

#define MVIOP_MU_QUEUE_ADDR_HOST_BIT   4

Definition at line 79 of file hptiop.h.

#define MVIOP_MU_QUEUE_ADDR_HOST_MASK   (~(0x1full))

Definition at line 78 of file hptiop.h.

#define MVIOP_MU_QUEUE_ADDR_IOP_HIGH32   0xffffffff

Definition at line 81 of file hptiop.h.

#define MVIOP_MU_QUEUE_REQUEST_RESULT_BIT   1

Definition at line 82 of file hptiop.h.

#define MVIOP_MU_QUEUE_REQUEST_RETURN_CONTEXT   2

Definition at line 83 of file hptiop.h.

#define MVIOP_QUEUE_LEN   512

Definition at line 56 of file hptiop.h.

Enumeration Type Documentation

Enumerator:
IOP_REQUEST_TYPE_GET_CONFIG 
IOP_REQUEST_TYPE_SET_CONFIG 
IOP_REQUEST_TYPE_BLOCK_COMMAND 
IOP_REQUEST_TYPE_SCSI_COMMAND 
IOP_REQUEST_TYPE_IOCTL_COMMAND 
IOP_REQUEST_TYPE_MAX 

Definition at line 122 of file hptiop.h.

Enumerator:
IOP_RESULT_PENDING 
IOP_RESULT_SUCCESS 
IOP_RESULT_FAIL 
IOP_RESULT_BUSY 
IOP_RESULT_RESET 
IOP_RESULT_INVALID_REQUEST 
IOP_RESULT_BAD_TARGET 
IOP_RESULT_CHECK_CONDITION 

Definition at line 131 of file hptiop.h.

Enumerator:
IOPMU_INBOUND_MSG0_NOP 
IOPMU_INBOUND_MSG0_RESET 
IOPMU_INBOUND_MSG0_FLUSH 
IOPMU_INBOUND_MSG0_SHUTDOWN 
IOPMU_INBOUND_MSG0_STOP_BACKGROUND_TASK 
IOPMU_INBOUND_MSG0_START_BACKGROUND_TASK 
IOPMU_INBOUND_MSG0_MAX 
IOPMU_OUTBOUND_MSG0_REGISTER_DEVICE_0 
IOPMU_OUTBOUND_MSG0_REGISTER_DEVICE_MAX 
IOPMU_OUTBOUND_MSG0_UNREGISTER_DEVICE_0 
IOPMU_OUTBOUND_MSG0_UNREGISTER_DEVICE_MAX 
IOPMU_OUTBOUND_MSG0_REVALIDATE_DEVICE_0 
IOPMU_OUTBOUND_MSG0_REVALIDATE_DEVICE_MAX 

Definition at line 90 of file hptiop.h.