43#define MPI_QUEUE_PRIORITY_HIGHEST 0xFF
44#define MPI_QUEUE_PRIORITY_LOWEST 0x00
46#define MPI_MAX_INBOUND_QUEUES 64
47#define MPI_MAX_OUTBOUND_QUEUES 64
50#define MPI_MAX_MEM_REGIONS (MPI_MAX_INBOUND_QUEUES + MPI_MAX_OUTBOUND_QUEUES) + 4
51#define MPI_LOGSIZE 4096
53#define MPI_IB_NUM_MASK 0x0000FFFF
54#define MPI_OB_NUM_MASK 0xFFFF0000
55#define MPI_OB_SHIFT 16
190#ifdef SA_FW_TEST_BUNCH_STARTS
191 bit32 BunchStarts_QPending;
192 bit32 BunchStarts_QPendingTick;
371#define ANALOG_SETUP_ENTRY_NO 10
372#define ANALOG_SETUP_ENTRY_SIZE 10
431#define TX_PORT_CFG1_OFFSET 0x00
432#define TX_PORT_CFG2_OFFSET 0x04
433#define TX_PORT_CFG3_OFFSET 0x08
434#define TX_CFG_OFFSET 0x0c
435#define RV_PORT_CFG1_OFFSET 0x10
436#define RV_PORT_CFG2_OFFSET 0x14
437#define RV_CFG1_OFFSET 0x18
438#define RV_CFG2_OFFSET 0x1c
450 bit8 responseQueue,
bit8 hiPriority);
454 bit8 responseQueue,
bit8 hiPriority);
462 bit8 responseQueue,
bit8 hiPriority);
466 bit8 responseQueue,
bit8 hiPriority,
int sendFl);
468#define INQ(queueNum) (bit8)(queueNum & MPI_IB_NUM_MASK)
469#define OUQ(queueNum) (bit8)((queueNum & MPI_OB_NUM_MASK) >> MPI_OB_SHIFT)
#define MPI_MAX_INBOUND_QUEUES
void mpiRequirementsGet(mpiConfig_t *config, mpiMemReq_t *memoryRequirement)
Retrieves the MPI layer resource requirements.
#define MPI_MAX_OUTBOUND_QUEUES
FORCEINLINE bit32 mpiMsgFreeGet(mpiICQueue_t *circularQ, bit16 messageSize, void **messagePtr)
Retrieves a free message buffer from an inbound queue.
FORCEINLINE bit32 mpiMsgConsume(mpiOCQueue_t *circularQ, void **messagePtr1, mpiMsgCategory_t *pCategory, bit16 *pOpCode, bit8 *pBC)
FORCEINLINE bit32 mpiMsgProduce(mpiICQueue_t *circularQ, void *messagePtr, mpiMsgCategory_t category, bit16 opCode, bit8 responseQueue, bit8 hiPriority)
FORCEINLINE bit32 mpiMsgFreeSet(mpiOCQueue_t *circularQ, void *messagePtr1, bit8 bc)
#define MPI_MAX_MEM_REGIONS
mpiMsgCategory_e
MPI message categories.
enum mpiMsgCategory_e mpiMsgCategory_t
data structure stores OS specific and LL specific context
MPI layer configuration parameters.
mpiInboundQueueDescriptor_t inboundQueues[MPI_MAX_INBOUND_QUEUES]
bit16 maxNumInboundQueues
agsaPhyAnalogSetupTable_t phyAnalogConfig
mpiOutboundQueueDescriptor_t outboundQueues[MPI_MAX_OUTBOUND_QUEUES]
mpiHostLLConfigDescriptor_t mainConfig
bit16 maxNumOutboundQueues
bit32 outboundTargetSSPEventPID0_3
bit32 PortRecoveryTimerPortResetTimer
bit32 InterruptVecTblOffset
bit32 InterruptReassertionDelay
bit32 FatalErrorInterrupt
bit32 FatalErrorDumpOffset0
bit32 FatalErrorDumpOffset1
bit32 phyAttributeTblOffset
bit32 outboundHWEventPID4_7
bit32 lowerIOPeventLogAddress
bit32 outboundTargetSSPEventPID4_7
bit32 outboundHWEventPID0_3
bit32 upperIOPeventLogAddress
bit32 FatalErrorDumpLength0
bit32 upperEventLogAddress
bit32 lowerEventLogAddress
bit32 analogSetupTblOffset
bit32 outboundNCQEventPID4_7
bit32 outboundTargetITNexusEventPID4_7
bit32 FatalErrorDumpLength1
bit32 outboundTargetITNexusEventPID0_3
bit32 outboundNCQEventPID0_3
Circular Queue descriptor.
MPI inbound queue attributes.
Describes MPI memory requirements.
mpiMem_t region[MPI_MAX_MEM_REGIONS]
Structure that descibes memory regions.
MPI outbound queue attributes.
MPI Phy Calibration Table.
sasPhyAttribute_t phyAttributeTable
bit16 maxNumOutboundQueues
bit16 maxNumInboundQueues
mpiOutboundQueueDescriptor_t outboundQueues[MPI_MAX_OUTBOUND_QUEUES]
mpiInboundQueueDescriptor_t inboundQueues[MPI_MAX_INBOUND_QUEUES]
mpiInterruptVT_t interruptVTable
mpiHostLLConfigDescriptor_t mainConfig
agsaPhyAnalogSetupTable_t phyAnalogConfig