FreeBSD kernel pms device code
|
The file implements the functions of MPI Inbound IOMB/Command to SPC. More...
#include <sys/cdefs.h>
#include <dev/pms/config.h>
#include <dev/pms/RefTisa/sallsdk/spc/saglobal.h>
Go to the source code of this file.
Functions | |
__FBSDID ("$FreeBSD$") | |
GLOBAL bit32 | saEchoCommand (agsaRoot_t *agRoot, agsaContext_t *agContext, bit32 queueNum, void *echoPayload) |
SAS/SATA LL API ECHO Command. More... | |
GLOBAL bit32 | mpiBuildCmd (agsaRoot_t *agRoot, bit32 *payload, mpiMsgCategory_t category, bit16 opcode, bit16 size, bit32 queueNum) |
Build a IOMB command and send to SPC. More... | |
GLOBAL bit32 | mpiEchoCmd (agsaRoot_t *agRoot, bit32 queueNum, agsaContext_t *agContext, void *echoPayload) |
SPC MPI ECHO Command. More... | |
GLOBAL bit32 | mpiGetPhyProfileCmd (agsaRoot_t *agRoot, agsaContext_t *agContext, bit32 Operation, bit32 PhyId, void *agCB) |
Get Phy Profile Command SPCv. More... | |
GLOBAL bit32 | mpiVHistCapCmd (agsaRoot_t *agRoot, agsaContext_t *agContext, bit32 queueNum, bit32 Channel, bit32 NumBitLo, bit32 NumBitHi, bit32 PcieAddrLo, bit32 PcieAddrHi, bit32 ByteCount) |
GLOBAL bit32 | mpiSetPhyProfileCmd (agsaRoot_t *agRoot, agsaContext_t *agContext, bit32 Operation, bit32 PhyId, bit32 length, void *buffer) |
GLOBAL bit32 | mpiGetDeviceInfoCmd (agsaRoot_t *agRoot, agsaContext_t *agContext, bit32 deviceid, bit32 option, bit32 queueNum) |
Get Device Information Command. More... | |
GLOBAL bit32 | mpiSetDeviceInfoCmd (agsaRoot_t *agRoot, agsaContext_t *agContext, bit32 deviceid, bit32 option, bit32 queueNum, bit32 param, ossaSetDeviceInfoCB_t agCB) |
Set Device Information Command. More... | |
GLOBAL bit32 | mpiPhyStartCmd (agsaRoot_t *agRoot, bit32 tag, bit32 phyId, agsaPhyConfig_t *agPhyConfig, agsaSASIdentify_t *agSASIdentify, bit32 queueNum) |
SPC MPI Phy Start Command. More... | |
GLOBAL bit32 | mpiPhyStopCmd (agsaRoot_t *agRoot, bit32 tag, bit32 phyId, bit32 queueNum) |
SPC MPI Phy Stop Command. More... | |
GLOBAL bit32 | mpiSMPCmd (agsaRoot_t *agRoot, void *pIomb, bit16 opcode, agsaSMPCmd_t *payload, bit8 inq, bit8 outq) |
SPC MPI SMP Request Command. More... | |
GLOBAL bit32 | mpiDeregDevHandleCmd (agsaRoot_t *agRoot, agsaContext_t *agContext, agsaDeviceDesc_t *pDevice, bit32 deviceId, bit32 portId, bit32 queueNum) |
SPC MPI Deregister Device Handle Command. More... | |
GLOBAL bit32 | mpiGetDeviceHandleCmd (agsaRoot_t *agRoot, agsaContext_t *agContext, bit32 portId, bit32 flags, bit32 maxDevs, bit32 queueNum, bit32 skipCount) |
SPC MPI Get Device Handle Command. More... | |
GLOBAL bit32 | mpiLocalPhyControlCmd (agsaRoot_t *agRoot, bit32 tag, bit32 phyId, bit32 operation, bit32 queueNum) |
SPC MPI LOCAL PHY CONTROL Command. More... | |
GLOBAL bit32 | mpiDevHandleAcceptCmd (agsaRoot_t *agRoot, agsaContext_t *agContext, bit32 ctag, bit32 deviceId, bit32 action, bit32 flag, bit32 itlnx, bit32 queueNum) |
Device Handle Accept Command. More... | |
GLOBAL bit32 | mpiNVMReadRegDumpCmd (agsaRoot_t *agRoot, agsaContext_t *agContext, bit32 queueNum, bit32 cpuId, bit32 cOffset, bit32 addrHi, bit32 addrLo, bit32 len) |
SPC READ REGISTER DUMP Command. More... | |
GLOBAL bit32 | mpiGetNVMDCmd (agsaRoot_t *agRoot, agsaContext_t *agContext, agsaNVMDData_t *NVMDInfo, bit32 queueNum) |
Get NVM Data command. More... | |
GLOBAL bit32 | mpiSetNVMDCmd (agsaRoot_t *agRoot, agsaContext_t *agContext, agsaNVMDData_t *NVMDInfo, bit32 queueNum) |
Set NVM Data Command. More... | |
GLOBAL bit32 | mpiSetDeviceStateCmd (agsaRoot_t *agRoot, agsaContext_t *agContext, bit32 deviceId, bit32 nds, bit32 queueNum) |
Set Device State command. More... | |
GLOBAL bit32 | mpiGetDeviceStateCmd (agsaRoot_t *agRoot, agsaContext_t *agContext, bit32 deviceId, bit32 queueNum) |
Get Device State command. More... | |
GLOBAL bit32 | mpiSasReinitializeCmd (agsaRoot_t *agRoot, agsaContext_t *agContext, agsaSASReconfig_t *agSASConfig, bit32 queueNum) |
SAS ReInitialize command. More... | |
GLOBAL bit32 | mpiSetControllerConfigCmd (agsaRoot_t *agRoot, agsaContext_t *agContext, agsaSetControllerConfigCmd_t *agControllerConfig, bit32 queueNum, bit8 modePageContext) |
SAS Set Controller Configuration Command. More... | |
GLOBAL bit32 | mpiGetControllerConfigCmd (agsaRoot_t *agRoot, agsaContext_t *agContext, agsaGetControllerConfigCmd_t *agControllerConfig, bit32 queueNum) |
SAS Get Controller Configuration Command. More... | |
GLOBAL bit32 | mpiKekManagementCmd (agsaRoot_t *agRoot, agsaContext_t *agContext, agsaKekManagementCmd_t *agKekMgmt, bit32 queueNum) |
SAS Encryption KEK command. More... | |
GLOBAL bit32 | mpiDekManagementCmd (agsaRoot_t *agRoot, agsaContext_t *agContext, agsaDekManagementCmd_t *agDekMgmt, bit32 queueNum) |
SAS Encryption DEK management command. More... | |
GLOBAL bit32 | mpiOperatorManagementCmd (agsaRoot_t *agRoot, bit32 queueNum, agsaContext_t *agContext, agsaOperatorMangmentCmd_t *operatorcode) |
This command sends operator management command. More... | |
GLOBAL bit32 | mpiEncryptBistCmd (agsaRoot_t *agRoot, bit32 queueNum, agsaContext_t *agContext, agsaEncryptBist_t *bist) |
This command sends encrypt self test command. More... | |
GLOBAL bit32 | mpiSetOperatorCmd (agsaRoot_t *agRoot, bit32 queueNum, agsaContext_t *agContext, agsaSetOperatorCmd_t *operatorcode) |
This command sends set operator command. More... | |
GLOBAL bit32 | mpiGetOperatorCmd (agsaRoot_t *agRoot, bit32 queueNum, agsaContext_t *agContext, agsaGetOperatorCmd_t *operatorcode) |
This command sends get operator command. More... | |
GLOBAL bit32 | mpiDIFEncryptionOffloadCmd (agsaRoot_t *agRoot, agsaContext_t *agContext, bit32 queueNum, bit32 op, agsaDifEncPayload_t *agDifEncOffload, ossaDIFEncryptionOffloadStartCB_t agCB) |
The file implements the functions of MPI Inbound IOMB/Command to SPC.
Definition in file sampicmd.c.
__FBSDID | ( | "$FreeBSD$" | ) |
GLOBAL bit32 mpiBuildCmd | ( | agsaRoot_t * | agRoot, |
bit32 * | payload, | ||
mpiMsgCategory_t | category, | ||
bit16 | opcode, | ||
bit16 | size, | ||
bit32 | queueNum | ||
) |
Build a IOMB command and send to SPC.
Build an IOMB if there is a free message buffer and Send it to SPC
agRoot | Handles for this instance of SAS/SATA hardware |
payload | Pointer of payload in the IOMB |
category | Category of IOMB |
opcode | Opcode of IOMB |
size | Size of IOMB |
queueNum | Inbound/outbound queue number |
Definition at line 94 of file sampicmd.c.
References agNULL, AGSA_MAX_INBOUND_Q, AGSA_MAX_OUTBOUND_Q, AGSA_RC_BUSY, AGSA_RC_FAILURE, AGSA_RC_SUCCESS, hpDBG_VERY_LOUD, agsaLLRoot_s::inboundQueue, LL_IOREQ_IBQ0_LOCK, MPI_IB_NUM_MASK, MPI_OB_NUM_MASK, MPI_OB_SHIFT, mpiMsgFreeGet(), mpiMsgProduce(), agsaQueueConfig_s::numOutboundQueues, ossaSingleThreadedEnter(), ossaSingleThreadedLeave(), mpiICQueue_s::priority, agsaLLRoot_s::QueueConfig, SA_ASSERT, SA_DBG1, agsaContext_s::sdkData, si_memcpy(), smTraceFuncEnter, and smTraceFuncExit.
Referenced by mpiDekManagementCmd(), mpiDeregDevHandleCmd(), mpiDevHandleAcceptCmd(), mpiDIFEncryptionOffloadCmd(), mpiEchoCmd(), mpiEncryptBistCmd(), mpiGetControllerConfigCmd(), mpiGetDeviceHandleCmd(), mpiGetDeviceInfoCmd(), mpiGetDeviceStateCmd(), mpiGetNVMDCmd(), mpiGetOperatorCmd(), mpiGetPhyProfileCmd(), mpiKekManagementCmd(), mpiLocalPhyControlCmd(), mpiNVMReadRegDumpCmd(), mpiOperatorManagementCmd(), mpiPhyStartCmd(), mpiPhyStopCmd(), mpiSasReinitializeCmd(), mpiSetControllerConfigCmd(), mpiSetDeviceInfoCmd(), mpiSetDeviceStateCmd(), mpiSetNVMDCmd(), mpiSetOperatorCmd(), mpiSetPhyProfileCmd(), mpiVHistCapCmd(), saGetDFEData(), saGetTimeStamp(), saGpioEventSetup(), saGpioPinSetup(), saGpioRead(), saGpioWrite(), saHwEventAck(), saPCIeDiagExecute(), saPortControl(), saRegisterNewDevice(), saSASDiagExecute(), saSASDiagStartEnd(), saSgpio(), and saSMPAbort().
GLOBAL bit32 mpiDekManagementCmd | ( | agsaRoot_t * | agRoot, |
agsaContext_t * | agContext, | ||
agsaDekManagementCmd_t * | agDekMgmt, | ||
bit32 | queueNum | ||
) |
SAS Encryption DEK management command.
This command updates one or more DEK in a controller that supports encryption.
agRoot | Handles for this instance of SAS/SATA LLL |
agContext | Context for the Get Nexus State command |
agDekMgmt | DEK information that will be sent to the controller |
queueNum | Queue Number of inbound/outbound queue |
Definition at line 2372 of file sampicmd.c.
References agsaIOMap_s::agContext, agFALSE, agNULL, AGSA_RC_BUSY, AGSA_RC_SUCCESS, agTRUE, agsaDekManagementCmd_s::dekIndex, agsaLLRoot_s::freeIORequests, hpDBG_VERY_LOUD, agsaIORequestDesc_s::HTag, agsaLLRoot_s::IOMap, IOMB_SIZE64, agsaIOMap_s::IORequest, agsaDekManagementCmd_s::KEKIDX_Reserved_TBLS_DSOP, agsaIORequestDesc_s::linkNode, LL_IOREQ_LOCKEQ_LOCK, MARK_OFF, MPI_CATEGORY_SAS_SATA, mpiBuildCmd(), OPC_INB_DEK_MANAGEMENT, ossaSingleThreadedEnter(), ossaSingleThreadedLeave(), agsaDekManagementCmd_s::Reserved_DBF_TBL_SIZE, SA_ASSERT, SA_DBG1, SA_DBG3, saLlistIOAdd, saLlistIOGetHead, saLlistIORemove, agsaContext_s::sdkData, smTraceFuncEnter, smTraceFuncExit, agsaDekManagementCmd_s::tableAddrHi, agsaDekManagementCmd_s::tableAddrLo, agsaDekManagementCmd_s::tableEntries, agsaDekManagementCmd_s::tag, agsaIOMap_s::Tag, and agsaIORequestDesc_s::valid.
Referenced by saEncryptDekCacheInvalidate(), and saEncryptDekCacheUpdate().
GLOBAL bit32 mpiDeregDevHandleCmd | ( | agsaRoot_t * | agRoot, |
agsaContext_t * | agContext, | ||
agsaDeviceDesc_t * | pDevice, | ||
bit32 | deviceId, | ||
bit32 | portId, | ||
bit32 | queueNum | ||
) |
SPC MPI Deregister Device Handle Command.
This command used to deregister(remove) the device handle.
agRoot | Handles for this instance of SAS/SATA LLL |
agDevHandle | Device Handle |
deviceId | index of device |
portId | index of port |
queueNum | IQ/OQ number |
Definition at line 965 of file sampicmd.c.
References agsaIOMap_s::agContext, agFALSE, agNULL, AGSA_RC_BUSY, AGSA_RC_SUCCESS, agTRUE, agsaLLRoot_s::freeIORequests, hpDBG_VERY_LOUD, agsaIORequestDesc_s::HTag, agsaLLRoot_s::IOMap, IOMB_SIZE64, agsaIOMap_s::IORequest, agsaIORequestDesc_s::linkNode, LL_IOREQ_LOCKEQ_LOCK, MARK_OFF, MPI_CATEGORY_SAS_SATA, mpiBuildCmd(), OPC_INB_DEREG_DEV_HANDLE, OSSA_OFFSET_OF, ossaSingleThreadedEnter(), ossaSingleThreadedLeave(), agsaIORequestDesc_s::pDevice, SA_ASSERT, SA_DBG1, SA_DBG3, saLlistIOAdd, saLlistIOGetHead, saLlistIORemove, agsaContext_s::sdkData, si_memset(), smTraceFuncEnter, smTraceFuncExit, agsaIOMap_s::Tag, and agsaIORequestDesc_s::valid.
Referenced by saDeregisterDeviceHandle().
GLOBAL bit32 mpiDevHandleAcceptCmd | ( | agsaRoot_t * | agRoot, |
agsaContext_t * | agContext, | ||
bit32 | ctag, | ||
bit32 | deviceId, | ||
bit32 | action, | ||
bit32 | flag, | ||
bit32 | itlnx, | ||
bit32 | queueNum | ||
) |
Device Handle Accept Command.
This command is Device Handle Accept IOMB to SPC.
agRoot | Handles for this instance of SAS/SATA LLL |
agContext | Context for the set VPD command |
ctag | controller tag |
deviceId | device Id |
action | action |
queueNum | queue Number |
Definition at line 1222 of file sampicmd.c.
References agsaIOMap_s::agContext, agFALSE, agNULL, AGSA_RC_BUSY, AGSA_RC_SUCCESS, agsaLLRoot_s::freeIORequests, agsaLLRoot_s::freeReservedRequests, hpDBG_VERY_LOUD, agsaIORequestDesc_s::HTag, agsaLLRoot_s::IOMap, IOMB_SIZE64, agsaIOMap_s::IORequest, agsaIORequestDesc_s::linkNode, LL_IOREQ_LOCKEQ_LOCK, MARK_OFF, MPI_CATEGORY_SAS_SATA, mpiBuildCmd(), OPC_INB_DEV_HANDLE_ACCEPT, OSSA_OFFSET_OF, ossaSingleThreadedEnter(), ossaSingleThreadedLeave(), SA_ASSERT, SA_DBG1, SA_DBG2, SA_RESERVED_REQUEST_COUNT, saLlistIOAdd, saLlistIOGetCount, saLlistIOGetHead, saLlistIORemove, agsaContext_s::sdkData, SHIFT1, SHIFT16, SHIFT17, SHIFT20, SHIFT24, si_memset(), smTraceFuncEnter, smTraceFuncExit, agsaIOMap_s::Tag, and agsaIORequestDesc_s::valid.
Referenced by mpiDeviceHandleArrived().
GLOBAL bit32 mpiDIFEncryptionOffloadCmd | ( | agsaRoot_t * | agRoot, |
agsaContext_t * | agContext, | ||
bit32 | queueNum, | ||
bit32 | op, | ||
agsaDifEncPayload_t * | agDifEncOffload, | ||
ossaDIFEncryptionOffloadStartCB_t | agCB | ||
) |
Definition at line 2790 of file sampicmd.c.
References agsaIOMap_s::agContext, agFALSE, agNULL, AGSA_ENCRYPT_XTS_Mode, AGSA_RC_BUSY, AGSA_RC_FAILURE, AGSA_RC_SUCCESS, agsaEncryptCipherModeXTS, agTRUE, agsaEncrypt_s::cipherMode, agsaIORequestDesc_s::completionCB, agsaEncryptDek_s::dekIndex, agsaEncrypt_s::dekInfo, agsaEncryptDek_s::dekTable, agsaDifEncPayload_s::dif, agsaDif_s::DIFPerLAAddrHi, agsaDif_s::DIFPerLAAddrLo, agsaDif_s::DIFPerLARegion0SecCount, agsaDifEncPayload_s::DstDL, agsaDifEncPayload_s::DstSgl, agsaDifEncOffloadCmd_s::DstSgl, agsaDifEncPayload_s::encrypt, agsaEncrypt_s::EncryptionPerLAAddrHi, agsaEncrypt_s::EncryptionPerLAAddrLo, agsaEncrypt_s::EncryptionPerLRegion0SecCount, flags, agsaDif_s::flags, agsaLLRoot_s::freeIORequests, hpDBG_VERY_LOUD, agsaIORequestDesc_s::HTag, agsaDif_s::initialIOSeed, agsaLLRoot_s::IOMap, IOMB_SIZE128, agsaIOMap_s::IORequest, agsaEncrypt_s::kekIndex, agsaEncrypt_s::keyTag_W0, agsaEncrypt_s::keyTag_W1, agsaEncrypt_s::keyTagCheck, agsaIORequestDesc_s::linkNode, LL_IOREQ_LOCKEQ_LOCK, MARK_OFF, MPI_CATEGORY_SAS_SATA, mpiBuildCmd(), OPC_INB_DIF_ENC_OFFLOAD_CMD, OSSA_OFFSET_OF, ossaSingleThreadedEnter(), ossaSingleThreadedLeave(), SA_ASSERT, SA_DBG1, SA_DBG3, saLlistIOAdd, saLlistIOGetHead, saLlistIORemove, agsaContext_s::sdkData, agsaEncrypt_s::sectorSizeIndex, SHIFT1, SHIFT16, SHIFT2, SHIFT24, SHIFT4, SHIFT5, SHIFT8, si_memcpy(), si_memset(), smIS_SPCV(), smTraceFuncEnter, smTraceFuncExit, agsaDifEncPayload_s::SrcDL, agsaDifEncPayload_s::SrcSgl, agsaDifEncOffloadCmd_s::SrcSgl, agsaIOMap_s::Tag, agsaEncrypt_s::tweakVal_W0, agsaEncrypt_s::tweakVal_W1, agsaEncrypt_s::tweakVal_W2, agsaEncrypt_s::tweakVal_W3, agsaDif_s::udrtArray, agsaDif_s::udtArray, and agsaIORequestDesc_s::valid.
Referenced by saDIFEncryptionOffloadStart().
GLOBAL bit32 mpiEchoCmd | ( | agsaRoot_t * | agRoot, |
bit32 | queueNum, | ||
agsaContext_t * | agContext, | ||
void * | echoPayload | ||
) |
SPC MPI ECHO Command.
This command used to test that MPI between host and SPC IOP is operational.
agRoot | Handles for this instance of SAS/SATA LLL |
queueNum | Inbound/outbound queue number |
tag | Tag of this IOMB |
echoPayload | Pointer to the ECHO payload of inbound IOMB |
Definition at line 189 of file sampicmd.c.
References agsaIOMap_s::agContext, agFALSE, agNULL, AGSA_RC_BUSY, AGSA_RC_SUCCESS, agTRUE, agsaLLRoot_s::freeIORequests, hpDBG_VERY_LOUD, agsaIORequestDesc_s::HTag, agsaLLRoot_s::IOMap, IOMB_SIZE64, agsaIOMap_s::IORequest, agsaIORequestDesc_s::linkNode, LL_IOREQ_LOCKEQ_LOCK, MARK_OFF, MPI_CATEGORY_SAS_SATA, mpiBuildCmd(), OPC_INB_ECHO, OSSA_OFFSET_OF, ossaSingleThreadedEnter(), ossaSingleThreadedLeave(), agsaEchoCmd_s::payload, SA_ASSERT, SA_DBG1, SA_DBG3, saLlistIOAdd, saLlistIOGetHead, saLlistIORemove, agsaContext_s::sdkData, si_memcpy(), smTraceFuncEnter, smTraceFuncExit, agsaIOMap_s::Tag, and agsaIORequestDesc_s::valid.
Referenced by saEchoCommand().
GLOBAL bit32 mpiEncryptBistCmd | ( | agsaRoot_t * | agRoot, |
bit32 | queueNum, | ||
agsaContext_t * | agContext, | ||
agsaEncryptBist_t * | bist | ||
) |
This command sends encrypt self test command.
agRoot | Handles for this instance of SAS/SATA LLL |
agContext | Context |
queueNum | Queue Number of inbound/outbound queue |
Definition at line 2545 of file sampicmd.c.
References agsaIOMap_s::agContext, agFALSE, agNULL, AGSA_RC_BUSY, AGSA_RC_SUCCESS, agTRUE, agsaLLRoot_s::freeIORequests, hpDBG_VERY_LOUD, agsaIORequestDesc_s::HTag, agsaLLRoot_s::IOMap, IOMB_SIZE64, agsaIOMap_s::IORequest, agsaIORequestDesc_s::linkNode, LL_IOREQ_LOCKEQ_LOCK, MARK_OFF, MPI_CATEGORY_SAS_SATA, mpiBuildCmd(), OPC_INB_ENC_TEST_EXECUTE, ossaSingleThreadedEnter(), ossaSingleThreadedLeave(), agsaEncryptBist_s::r_subop, SA_ASSERT, SA_DBG1, saLlistIOAdd, saLlistIOGetHead, saLlistIORemove, agsaContext_s::sdkData, smTraceFuncEnter, smTraceFuncExit, agsaEncryptBist_s::tag, agsaIOMap_s::Tag, agsaEncryptBist_s::testDiscption, and agsaIORequestDesc_s::valid.
Referenced by saEncryptSelftestExecute().
GLOBAL bit32 mpiGetControllerConfigCmd | ( | agsaRoot_t * | agRoot, |
agsaContext_t * | agContext, | ||
agsaGetControllerConfigCmd_t * | agControllerConfig, | ||
bit32 | queueNum | ||
) |
SAS Get Controller Configuration Command.
This command retrieves the contents of a controller mode page.
agRoot | Handles for this instance of SAS/SATA LLL |
agContext | Context for the Get Nexus State command |
agControllerConfig | Mode page to retrieve from the controller |
queueNum | Queue Number of inbound/outbound queue |
Definition at line 2198 of file sampicmd.c.
References agsaIOMap_s::agContext, agFALSE, agNULL, AGSA_RC_BUSY, AGSA_RC_SUCCESS, agTRUE, agsaLLRoot_s::freeIORequests, hpDBG_VERY_LOUD, agsaIORequestDesc_s::HTag, agsaLLRoot_s::IOMap, IOMB_SIZE64, agsaIOMap_s::IORequest, agsaIORequestDesc_s::linkNode, LL_IOREQ_LOCKEQ_LOCK, MARK_OFF, MPI_CATEGORY_SAS_SATA, mpiBuildCmd(), OPC_INB_GET_CONTROLLER_CONFIG, ossaSingleThreadedEnter(), ossaSingleThreadedLeave(), agsaGetControllerConfigCmd_s::pageCode, SA_ASSERT, SA_DBG1, SA_DBG3, saLlistIOAdd, saLlistIOGetHead, saLlistIORemove, agsaContext_s::sdkData, smTraceFuncEnter, smTraceFuncExit, agsaGetControllerConfigCmd_s::tag, agsaIOMap_s::Tag, and agsaIORequestDesc_s::valid.
Referenced by saGetControllerConfig().
GLOBAL bit32 mpiGetDeviceHandleCmd | ( | agsaRoot_t * | agRoot, |
agsaContext_t * | agContext, | ||
bit32 | portId, | ||
bit32 | flags, | ||
bit32 | maxDevs, | ||
bit32 | queueNum, | ||
bit32 | skipCount | ||
) |
SPC MPI Get Device Handle Command.
This command used to get device handle.
agRoot | Handles for this instance of SAS/SATA LLL |
agContext | Context of Device Handle Command |
portId | index of port |
flags | flags |
maxDevs | Maximum Device Handles |
queueNum | IQ/OQ number |
skipCount | skip device entry count |
Definition at line 1058 of file sampicmd.c.
References agsaIOMap_s::agContext, agFALSE, agNULL, AGSA_RC_BUSY, AGSA_RC_SUCCESS, agTRUE, flags, agsaLLRoot_s::freeIORequests, agsaLLRoot_s::freeReservedRequests, hpDBG_VERY_LOUD, agsaIORequestDesc_s::HTag, agsaLLRoot_s::IOMap, IOMB_SIZE64, agsaIOMap_s::IORequest, agsaIORequestDesc_s::linkNode, LL_IOREQ_LOCKEQ_LOCK, MARK_OFF, MPI_CATEGORY_SAS_SATA, mpiBuildCmd(), OPC_INB_GET_DEV_HANDLE, OSSA_OFFSET_OF, ossaSingleThreadedEnter(), ossaSingleThreadedLeave(), PORTID_MASK, SA_ASSERT, SA_DBG1, SA_DBG3, SA_RESERVED_REQUEST_COUNT, saLlistIOAdd, saLlistIOGetCount, saLlistIOGetHead, saLlistIORemove, agsaContext_s::sdkData, SHIFT24, SHIFT8, si_memset(), smTraceFuncEnter, smTraceFuncExit, agsaIOMap_s::Tag, and agsaIORequestDesc_s::valid.
Referenced by saGetDeviceHandles().
GLOBAL bit32 mpiGetDeviceInfoCmd | ( | agsaRoot_t * | agRoot, |
agsaContext_t * | agContext, | ||
bit32 | deviceid, | ||
bit32 | option, | ||
bit32 | queueNum | ||
) |
Get Device Information Command.
This command is get # of phys and support speeds from SPC.
agRoot | Handles for this instance of SAS/SATA LLL |
agDevHandle | Handle of device |
deviceid | Device Id |
opton | oprion |
Definition at line 541 of file sampicmd.c.
References agsaIOMap_s::agContext, agFALSE, agNULL, AGSA_RC_BUSY, AGSA_RC_FAILURE, AGSA_RC_SUCCESS, agTRUE, agsaIORequestDesc_s::DeviceInfoCmdOption, agsaLLRoot_s::freeIORequests, hpDBG_VERY_LOUD, agsaIORequestDesc_s::HTag, agsaLLRoot_s::IOMap, IOMB_SIZE64, agsaIOMap_s::IORequest, agsaIORequestDesc_s::linkNode, LL_IOREQ_LOCKEQ_LOCK, MARK_OFF, MPI_CATEGORY_SAS_SATA, mpiBuildCmd(), OPC_INB_GET_DEV_INFO, OPC_INB_SPC_GET_DEV_INFO, OSSA_OFFSET_OF, ossaSingleThreadedEnter(), ossaSingleThreadedLeave(), SA_ASSERT, SA_DBG1, SA_DBG3, saLlistIOAdd, saLlistIOGetHead, saLlistIORemove, agsaContext_s::sdkData, si_memset(), smIS_SPC(), smTraceFuncEnter, smTraceFuncExit, agsaIOMap_s::Tag, and agsaIORequestDesc_s::valid.
Referenced by saGetDeviceInfo().
GLOBAL bit32 mpiGetDeviceStateCmd | ( | agsaRoot_t * | agRoot, |
agsaContext_t * | agContext, | ||
bit32 | deviceId, | ||
bit32 | queueNum | ||
) |
Get Device State command.
This command is get device State to SPC.
agRoot | Handles for this instance of SAS/SATA LLL |
agContext | Context for the Get Nexus State command |
deviceId | DeviceId |
queueNum | Queue Number of inbound/outbound queue |
Definition at line 1890 of file sampicmd.c.
References agsaIOMap_s::agContext, agFALSE, agNULL, AGSA_RC_BUSY, AGSA_RC_SUCCESS, agTRUE, agsaLLRoot_s::freeIORequests, agsaLLRoot_s::freeReservedRequests, hpDBG_VERY_LOUD, agsaIORequestDesc_s::HTag, agsaLLRoot_s::IOMap, IOMB_SIZE64, agsaIOMap_s::IORequest, agsaIORequestDesc_s::linkNode, LL_IOREQ_LOCKEQ_LOCK, MARK_OFF, MPI_CATEGORY_SAS_SATA, mpiBuildCmd(), OPC_INB_GET_DEVICE_STATE, OSSA_OFFSET_OF, ossaSingleThreadedEnter(), ossaSingleThreadedLeave(), SA_ASSERT, SA_DBG1, SA_DBG3, SA_RESERVED_REQUEST_COUNT, saLlistIOAdd, saLlistIOGetCount, saLlistIOGetHead, saLlistIORemove, agsaContext_s::sdkData, si_memset(), smTraceFuncEnter, smTraceFuncExit, agsaIOMap_s::Tag, and agsaIORequestDesc_s::valid.
Referenced by saGetDeviceState().
GLOBAL bit32 mpiGetNVMDCmd | ( | agsaRoot_t * | agRoot, |
agsaContext_t * | agContext, | ||
agsaNVMDData_t * | NVMDInfo, | ||
bit32 | queueNum | ||
) |
Get NVM Data command.
This command is get NVM Data from SPC.
agRoot | Handles for this instance of SAS/SATA LLL |
agContext | Context for the VPD command |
VPDInfo | Pointer of VPD Information |
queueNum | Queue Number of inbound/outbound queue |
Definition at line 1462 of file sampicmd.c.
References agsaIOMap_s::agContext, agFALSE, agNULL, AGSA_NVMD_AAP1_REG_FLASH, AGSA_NVMD_CONFIG_SEEPROM, AGSA_NVMD_EXPANSION_ROM, AGSA_NVMD_IOP_REG_FLASH, AGSA_NVMD_TWI_DEVICES, AGSA_NVMD_VPD_FLASH, AGSA_RC_BUSY, AGSA_RC_FAILURE, AGSA_RC_SUCCESS, agTRUE, agsaNVMDData_s::dataOffsetAddress, agsaNVMDData_s::directLen, agsaLLRoot_s::freeIORequests, hpDBG_VERY_LOUD, agsaIORequestDesc_s::HTag, agsaNVMDData_s::indirectAddrLower32, agsaNVMDData_s::indirectAddrUpper32, agsaNVMDData_s::indirectLen, agsaNVMDData_s::indirectPayload, agsaLLRoot_s::IOMap, IOMB_SIZE64, agsaIOMap_s::IORequest, agsaIORequestDesc_s::linkNode, LL_IOREQ_LOCKEQ_LOCK, MARK_OFF, MPI_CATEGORY_SAS_SATA, mpiBuildCmd(), agsaNVMDData_s::NVMDevice, OPC_INB_GET_NVMD_DATA, OSSA_NVMD_MODE_ERROR, OSSA_OFFSET_OF, ossaGetNVMDResponseCB(), ossaSingleThreadedEnter(), ossaSingleThreadedLeave(), SA_ASSERT, SA_DBG1, SA_DBG3, saLlistIOAdd, saLlistIOGetHead, saLlistIORemove, agsaContext_s::sdkData, SHIFT12, SHIFT16, SHIFT24, SHIFT31, SHIFT4, SHIFT8, si_memset(), smTraceFuncEnter, smTraceFuncExit, agsaIOMap_s::Tag, agsaNVMDData_s::TWIBusNumber, agsaNVMDData_s::TWIDeviceAddress, agsaNVMDData_s::TWIDeviceAddressSize, agsaNVMDData_s::TWIDevicePageSize, and agsaIORequestDesc_s::valid.
Referenced by saGetNVMDCommand().
GLOBAL bit32 mpiGetOperatorCmd | ( | agsaRoot_t * | agRoot, |
bit32 | queueNum, | ||
agsaContext_t * | agContext, | ||
agsaGetOperatorCmd_t * | operatorcode | ||
) |
This command sends get operator command.
agRoot | Handles for this instance of SAS/SATA LLL |
agContext | Context |
queueNum | Queue Number of inbound/outbound queue |
Definition at line 2722 of file sampicmd.c.
References agsaIOMap_s::agContext, agFALSE, agNULL, AGSA_RC_BUSY, AGSA_RC_SUCCESS, agTRUE, agsaLLRoot_s::freeIORequests, hpDBG_VERY_LOUD, agsaIORequestDesc_s::HTag, agsaLLRoot_s::IOMap, IOMB_SIZE64, agsaIOMap_s::IORequest, agsaIORequestDesc_s::linkNode, LL_IOREQ_LOCKEQ_LOCK, MARK_OFF, MPI_CATEGORY_SAS_SATA, mpiBuildCmd(), OPC_INB_GET_OPERATOR, ossaSingleThreadedEnter(), ossaSingleThreadedLeave(), SA_ASSERT, SA_DBG1, saLlistIOAdd, saLlistIOGetHead, saLlistIORemove, agsaContext_s::sdkData, smTraceFuncEnter, smTraceFuncExit, agsaGetOperatorCmd_s::tag, agsaIOMap_s::Tag, and agsaIORequestDesc_s::valid.
Referenced by saGetOperator().
GLOBAL bit32 mpiGetPhyProfileCmd | ( | agsaRoot_t * | agRoot, |
agsaContext_t * | agContext, | ||
bit32 | Operation, | ||
bit32 | PhyId, | ||
void * | agCB | ||
) |
Get Phy Profile Command SPCv.
This command is get # of phys and support speeds from SPCV.
agRoot | Handles for this instance of SAS/SATA LLL |
agDevHandle | Handle of device |
Definition at line 283 of file sampicmd.c.
References agsaIOMap_s::agContext, agFALSE, agNULL, AGSA_RC_BUSY, AGSA_RC_SUCCESS, agTRUE, agsaIORequestDesc_s::completionCB, agsaLLRoot_s::freeIORequests, hpDBG_VERY_LOUD, agsaIORequestDesc_s::HTag, agsaLLRoot_s::IOMap, IOMB_SIZE128, agsaIOMap_s::IORequest, agsaIORequestDesc_s::linkNode, LL_IOREQ_LOCKEQ_LOCK, MARK_OFF, MPI_CATEGORY_SAS_SATA, mpiBuildCmd(), OPC_INB_GET_PHY_PROFILE, OSSA_OFFSET_OF, ossaSingleThreadedEnter(), ossaSingleThreadedLeave(), SA_ASSERT, SA_DBG1, SA_DBG3, saLlistAdd, saLlistGetHead, saLlistRemove, agsaContext_s::sdkData, SHIFT8, si_memset(), smTraceFuncEnter, smTraceFuncExit, agsaIOMap_s::Tag, and agsaIORequestDesc_s::valid.
Referenced by saGetPhyProfile().
GLOBAL bit32 mpiKekManagementCmd | ( | agsaRoot_t * | agRoot, |
agsaContext_t * | agContext, | ||
agsaKekManagementCmd_t * | agKekMgmt, | ||
bit32 | queueNum | ||
) |
SAS Encryption KEK command.
This command updates one or more KEK in a controller that supports encryption.
agRoot | Handles for this instance of SAS/SATA LLL |
agContext | Context for the Get Nexus State command |
agKekMgmt | Kek information that will be sent to the controller |
queueNum | Queue Number of inbound/outbound queue |
Definition at line 2289 of file sampicmd.c.
References agsaIOMap_s::agContext, agFALSE, agNULL, AGSA_RC_BUSY, AGSA_RC_SUCCESS, agTRUE, agsaLLRoot_s::freeIORequests, hpDBG_VERY_LOUD, agsaIORequestDesc_s::HTag, agsaLLRoot_s::IOMap, IOMB_SIZE64, agsaIOMap_s::IORequest, agsaIORequestDesc_s::linkNode, LL_IOREQ_LOCKEQ_LOCK, MARK_OFF, MPI_CATEGORY_SAS_SATA, mpiBuildCmd(), agsaKekManagementCmd_s::NEWKIDX_CURKIDX_KBF_Reserved_SKNV_KSOP, OPC_INB_KEK_MANAGEMENT, ossaSingleThreadedEnter(), ossaSingleThreadedLeave(), agsaKekManagementCmd_s::reserved, SA_ASSERT, SA_DBG1, SA_DBG3, saLlistIOAdd, saLlistIOGetHead, saLlistIORemove, agsaContext_s::sdkData, smTraceFuncEnter, smTraceFuncExit, agsaKekManagementCmd_s::tag, agsaIOMap_s::Tag, and agsaIORequestDesc_s::valid.
Referenced by saEncryptKekInvalidate(), and saEncryptKekUpdate().
GLOBAL bit32 mpiLocalPhyControlCmd | ( | agsaRoot_t * | agRoot, |
bit32 | tag, | ||
bit32 | phyId, | ||
bit32 | operation, | ||
bit32 | queueNum | ||
) |
SPC MPI LOCAL PHY CONTROL Command.
This command used to do the SPC Phy operation.
agRoot | Handles for this instance of SAS/SATA LLL |
tag | tag of IOMB |
phyId | PHY Id |
operation | operation of PHY control |
queueNum | IQ/OQ number |
Definition at line 1173 of file sampicmd.c.
References AGSA_RC_SUCCESS, BYTE_MASK, hpDBG_VERY_LOUD, IOMB_SIZE64, MPI_CATEGORY_SAS_SATA, mpiBuildCmd(), OPC_INB_LOCAL_PHY_CONTROL, OSSA_OFFSET_OF, SA_DBG3, SHIFT8, si_memset(), SM_PHYID_MASK, smTraceFuncEnter, and smTraceFuncExit.
Referenced by saLocalPhyControl().
GLOBAL bit32 mpiNVMReadRegDumpCmd | ( | agsaRoot_t * | agRoot, |
agsaContext_t * | agContext, | ||
bit32 | queueNum, | ||
bit32 | cpuId, | ||
bit32 | cOffset, | ||
bit32 | addrHi, | ||
bit32 | addrLo, | ||
bit32 | len | ||
) |
SPC READ REGISTER DUMP Command.
This command used to do the SPC Read Register Dump command.
agRoot | Handles for this instance of SAS/SATA LLL |
tag | tag of IOMB |
cpuId | CPU Id |
queueNum | IQ/OQ number |
cpuId | AAP1 or IOP |
cOffset | offset of the register dump data |
addrHi | Hi address if Register Dump data |
addrHi | Low address if Register Dump data |
len | the length of for read |
Definition at line 1350 of file sampicmd.c.
References AAP1_RDUMP, agsaIOMap_s::agContext, agFALSE, agNULL, AGSA_RC_BUSY, AGSA_RC_FAILURE, AGSA_RC_SUCCESS, agTRUE, agsaLLRoot_s::freeIORequests, hpDBG_VERY_LOUD, agsaIORequestDesc_s::HTag, agsaLLRoot_s::IOMap, IOMB_SIZE64, IOP_RDUMP, agsaIOMap_s::IORequest, IRMode, agsaIORequestDesc_s::linkNode, LL_IOREQ_LOCKEQ_LOCK, MARK_OFF, MPI_CATEGORY_SAS_SATA, mpiBuildCmd(), OPC_INB_GET_NVMD_DATA, OSSA_OFFSET_OF, ossaSingleThreadedEnter(), ossaSingleThreadedLeave(), SA_ASSERT, SA_DBG1, SA_DBG3, saLlistIOAdd, saLlistIOGetHead, saLlistIORemove, agsaContext_s::sdkData, si_memset(), smTraceFuncEnter, smTraceFuncExit, agsaIOMap_s::Tag, and agsaIORequestDesc_s::valid.
Referenced by saGetRegisterDump().
GLOBAL bit32 mpiOperatorManagementCmd | ( | agsaRoot_t * | agRoot, |
bit32 | queueNum, | ||
agsaContext_t * | agContext, | ||
agsaOperatorMangmentCmd_t * | operatorcode | ||
) |
This command sends operator management command.
agRoot | Handles for this instance of SAS/SATA LLL |
agContext | Context |
queueNum | Queue Number of inbound/outbound queue |
Definition at line 2462 of file sampicmd.c.
References agsaIOMap_s::agContext, agFALSE, agNULL, AGSA_RC_BUSY, AGSA_RC_SUCCESS, agTRUE, agsaLLRoot_s::freeIORequests, hpDBG_VERY_LOUD, agsaIORequestDesc_s::HTag, agsaLLRoot_s::IOMap, IOMB_SIZE128, agsaIOMap_s::IORequest, agsaIORequestDesc_s::linkNode, LL_IOREQ_LOCKEQ_LOCK, MARK_OFF, MPI_CATEGORY_SAS_SATA, mpiBuildCmd(), OPC_INB_OPR_MGMT, ossaSingleThreadedEnter(), ossaSingleThreadedLeave(), SA_ASSERT, SA_DBG1, saLlistIOAdd, saLlistIOGetHead, saLlistIORemove, agsaContext_s::sdkData, smTraceFuncEnter, smTraceFuncExit, agsaOperatorMangmentCmd_s::tag, agsaIOMap_s::Tag, and agsaIORequestDesc_s::valid.
Referenced by saOperatorManagement().
GLOBAL bit32 mpiPhyStartCmd | ( | agsaRoot_t * | agRoot, |
bit32 | tag, | ||
bit32 | phyId, | ||
agsaPhyConfig_t * | agPhyConfig, | ||
agsaSASIdentify_t * | agSASIdentify, | ||
bit32 | queueNum | ||
) |
SPC MPI Phy Start Command.
This command sends to SPC for the I/O.
agRoot | Handles for this instance of SAS/SATA LLL |
tag | tage for IOMB |
phyId | the phy id of the link will be started |
agPhyConfig | the phy properity |
agSASIdentify | the SAS identify frame will be sent by the phy |
Definition at line 755 of file sampicmd.c.
References AGSA_RC_SUCCESS, hpDBG_VERY_LOUD, index, IOMB_SIZE64, MPI_CATEGORY_SAS_SATA, mpiBuildCmd(), OPC_INB_PHYSTART, OSSA_OFFSET_OF, agsaPhyConfig_s::phyProperties, SA_ASSERT, SA_DBG1, SA_DBG2, SA_DBG3, agsaSASIdentify_s::sasAddressHi, agsaSASIdentify_s::sasAddressLo, agsaPhyStartCmd_s::sasIdentify, SHIFT16, SHIFT8, si_memcpy(), si_memset(), SM_PHYID_MASK, smIS_SPC(), smIS_spc8081, smTraceFuncEnter, and smTraceFuncExit.
Referenced by saPhyStart().
SPC MPI Phy Stop Command.
This command sends to SPC for the I/O.
agRoot | Handles for this instance of SAS/SATA LLL |
tag | tag of IOMB |
phyId | To stop the phyId |
Definition at line 854 of file sampicmd.c.
References AGSA_RC_SUCCESS, hpDBG_VERY_LOUD, IOMB_SIZE64, MPI_CATEGORY_SAS_SATA, mpiBuildCmd(), OPC_INB_PHYSTOP, OSSA_OFFSET_OF, SA_DBG3, si_memset(), SM_PHYID_MASK, smTraceFuncEnter, and smTraceFuncExit.
Referenced by saPhyStop().
GLOBAL bit32 mpiSasReinitializeCmd | ( | agsaRoot_t * | agRoot, |
agsaContext_t * | agContext, | ||
agsaSASReconfig_t * | agSASConfig, | ||
bit32 | queueNum | ||
) |
SAS ReInitialize command.
This command is Reinitialize SAS paremeters to SPC.
agRoot | Handles for this instance of SAS/SATA LLL |
agContext | Context for the Get Nexus State command |
agSASConfig | SAS Configuration Parameters |
queueNum | Queue Number of inbound/outbound queue |
Definition at line 2003 of file sampicmd.c.
References agsaIOMap_s::agContext, agFALSE, agNULL, AGSA_RC_BUSY, AGSA_RC_SUCCESS, agTRUE, agsaSASReconfig_s::flags, agsaLLRoot_s::freeIORequests, hpDBG_VERY_LOUD, agsaIORequestDesc_s::HTag, agsaLLRoot_s::IOMap, IOMB_SIZE64, agsaIOMap_s::IORequest, agsaIORequestDesc_s::linkNode, LL_IOREQ_LOCKEQ_LOCK, MARK_OFF, agsaSASReconfig_s::maxPorts, MPI_CATEGORY_SAS_SATA, mpiBuildCmd(), OPC_INB_SAS_RE_INITIALIZE, agsaSASReconfig_s::openRejectRetriesCmd, agsaSASReconfig_s::openRejectRetriesData, OSSA_OFFSET_OF, ossaSingleThreadedEnter(), ossaSingleThreadedLeave(), SA_ASSERT, SA_DBG1, SA_DBG3, saLlistIOAdd, saLlistIOGetHead, saLlistIORemove, agsaSASReconfig_s::sataHolTmo, agsaContext_s::sdkData, SHIFT16, si_memset(), smTraceFuncEnter, smTraceFuncExit, agsaIOMap_s::Tag, and agsaIORequestDesc_s::valid.
Referenced by saReconfigSASParams().
GLOBAL bit32 mpiSetControllerConfigCmd | ( | agsaRoot_t * | agRoot, |
agsaContext_t * | agContext, | ||
agsaSetControllerConfigCmd_t * | agControllerConfig, | ||
bit32 | queueNum, | ||
bit8 | modePageContext | ||
) |
SAS Set Controller Configuration Command.
This command updates the contents of a controller mode page.
agRoot | Handles for this instance of SAS/SATA LLL |
agContext | Context for the Get Nexus State command |
agControllerConfig | Mode page being sent to the controller |
queueNum | Queue Number of inbound/outbound queue |
Definition at line 2099 of file sampicmd.c.
References agsaIOMap_s::agContext, agFALSE, agNULL, AGSA_RC_BUSY, AGSA_RC_SUCCESS, agTRUE, agsaSetControllerConfigCmd_s::configPage, agsaLLRoot_s::freeIORequests, hpDBG_VERY_LOUD, agsaIORequestDesc_s::HTag, agsaLLRoot_s::IOMap, IOMB_SIZE64, agsaIOMap_s::IORequest, agsaIORequestDesc_s::linkNode, LL_IOREQ_LOCKEQ_LOCK, MARK_OFF, agsaIORequestDesc_s::modePageContext, MPI_CATEGORY_SAS_SATA, mpiBuildCmd(), OPC_INB_SET_CONTROLLER_CONFIG, ossaSingleThreadedEnter(), ossaSingleThreadedLeave(), agsaSetControllerConfigCmd_s::pageCode, SA_ASSERT, SA_DBG1, SA_DBG2, SA_DBG3, saLlistIOAdd, saLlistIOGetHead, saLlistIORemove, agsaContext_s::sdkData, smTraceFuncEnter, smTraceFuncExit, agsaSetControllerConfigCmd_s::tag, agsaIOMap_s::Tag, and agsaIORequestDesc_s::valid.
Referenced by saEncryptSetMode(), and saSetControllerConfig().
GLOBAL bit32 mpiSetDeviceInfoCmd | ( | agsaRoot_t * | agRoot, |
agsaContext_t * | agContext, | ||
bit32 | deviceid, | ||
bit32 | option, | ||
bit32 | queueNum, | ||
bit32 | param, | ||
ossaSetDeviceInfoCB_t | agCB | ||
) |
Set Device Information Command.
This command is Set Device Information to SPC.
agRoot | Handles for this instance of SAS/SATA LLL |
agDevHandle | Handle of device |
deviceid | Device Id |
opton | oprion |
Definition at line 642 of file sampicmd.c.
References agsaIOMap_s::agContext, agFALSE, agNULL, AGSA_RC_BUSY, AGSA_RC_SUCCESS, agTRUE, agsaIORequestDesc_s::completionCB, agsaLLRoot_s::freeIORequests, hpDBG_VERY_LOUD, agsaIORequestDesc_s::HTag, agsaLLRoot_s::IOMap, IOMB_SIZE64, agsaIOMap_s::IORequest, agsaIORequestDesc_s::linkNode, LL_IOREQ_LOCKEQ_LOCK, MARK_OFF, MPI_CATEGORY_SAS_SATA, mpiBuildCmd(), OPC_INB_SET_DEV_INFO, OSSA_OFFSET_OF, ossaSingleThreadedEnter(), ossaSingleThreadedLeave(), SA_ASSERT, SA_DBG1, SA_DBG2, SA_DBG3, saLlistIOAdd, saLlistIOGetHead, saLlistIORemove, agsaContext_s::sdkData, SET_DEV_INFO_SPC_DW3_MASK, SET_DEV_INFO_SPC_DW4_MASK, SET_DEV_INFO_V_DW3_MASK, SET_DEV_INFO_V_DW4_MASK, si_memset(), smIS_SPC(), smTraceFuncEnter, smTraceFuncExit, agsaIOMap_s::Tag, and agsaIORequestDesc_s::valid.
Referenced by saSetDeviceInfo().
GLOBAL bit32 mpiSetDeviceStateCmd | ( | agsaRoot_t * | agRoot, |
agsaContext_t * | agContext, | ||
bit32 | deviceId, | ||
bit32 | nds, | ||
bit32 | queueNum | ||
) |
Set Device State command.
This command is set Device State to SPC.
agRoot | Handles for this instance of SAS/SATA LLL |
agContext | Context for the Set Nexus State command |
deviceId | DeviceId |
queueNum | Queue Number of inbound/outbound queue |
Definition at line 1800 of file sampicmd.c.
References agsaIOMap_s::agContext, agFALSE, agNULL, AGSA_RC_BUSY, AGSA_RC_SUCCESS, agTRUE, agsaLLRoot_s::freeIORequests, hpDBG_VERY_LOUD, agsaIORequestDesc_s::HTag, agsaLLRoot_s::IOMap, IOMB_SIZE64, agsaIOMap_s::IORequest, agsaIORequestDesc_s::linkNode, LL_IOREQ_LOCKEQ_LOCK, MARK_OFF, MPI_CATEGORY_SAS_SATA, mpiBuildCmd(), OPC_INB_SET_DEVICE_STATE, OSSA_OFFSET_OF, ossaSingleThreadedEnter(), ossaSingleThreadedLeave(), SA_DBG1, SA_DBG3, saLlistIOAdd, saLlistIOGetHead, saLlistIORemove, agsaContext_s::sdkData, si_memset(), smTraceFuncEnter, smTraceFuncExit, agsaIOMap_s::Tag, and agsaIORequestDesc_s::valid.
Referenced by saSetDeviceState().
GLOBAL bit32 mpiSetNVMDCmd | ( | agsaRoot_t * | agRoot, |
agsaContext_t * | agContext, | ||
agsaNVMDData_t * | NVMDInfo, | ||
bit32 | queueNum | ||
) |
Set NVM Data Command.
This command is set NVM Data to SPC.
agRoot | Handles for this instance of SAS/SATA LLL |
agContext | Context for the set VPD command |
NVMDInfo | pointer of VPD information |
queueNum | queue Number |
Definition at line 1639 of file sampicmd.c.
References agsaIOMap_s::agContext, agFALSE, agNULL, AGSA_NVMD_CONFIG_SEEPROM, AGSA_NVMD_TWI_DEVICES, AGSA_NVMD_VPD_FLASH, AGSA_RC_BUSY, AGSA_RC_FAILURE, AGSA_RC_SUCCESS, agTRUE, agsaSetNVMDataCmd_s::Data, agsaNVMDData_s::dataOffsetAddress, agsaNVMDData_s::directData, agsaNVMDData_s::directLen, agsaLLRoot_s::freeIORequests, hpDBG_VERY_LOUD, agsaIORequestDesc_s::HTag, agsaNVMDData_s::indirectAddrLower32, agsaNVMDData_s::indirectAddrUpper32, agsaNVMDData_s::indirectLen, agsaNVMDData_s::indirectPayload, agsaLLRoot_s::IOMap, IOMB_SIZE64, agsaIOMap_s::IORequest, agsaIORequestDesc_s::linkNode, LL_IOREQ_LOCKEQ_LOCK, MARK_OFF, MPI_CATEGORY_SAS_SATA, mpiBuildCmd(), agsaSetNVMData_s::NVMData, agsaNVMDData_s::NVMDevice, OPC_INB_SET_NVMD_DATA, OSSA_NVMD_MODE_ERROR, OSSA_OFFSET_OF, ossaSetNVMDResponseCB(), ossaSingleThreadedEnter(), ossaSingleThreadedLeave(), SA_ASSERT, SA_DBG1, SA_DBG3, saLlistIOAdd, saLlistIOGetHead, saLlistIORemove, agsaContext_s::sdkData, SHIFT12, SHIFT16, SHIFT24, SHIFT31, SHIFT4, SHIFT8, si_memcpy(), si_memset(), agsaNVMDData_s::signature, smTraceFuncEnter, smTraceFuncExit, agsaIOMap_s::Tag, agsaNVMDData_s::TWIBusNumber, agsaNVMDData_s::TWIDeviceAddress, agsaNVMDData_s::TWIDeviceAddressSize, agsaNVMDData_s::TWIDevicePageSize, and agsaIORequestDesc_s::valid.
Referenced by saSetNVMDCommand().
GLOBAL bit32 mpiSetOperatorCmd | ( | agsaRoot_t * | agRoot, |
bit32 | queueNum, | ||
agsaContext_t * | agContext, | ||
agsaSetOperatorCmd_t * | operatorcode | ||
) |
This command sends set operator command.
agRoot | Handles for this instance of SAS/SATA LLL |
agContext | Context |
queueNum | Queue Number of inbound/outbound queue |
Definition at line 2637 of file sampicmd.c.
References agsaIOMap_s::agContext, agFALSE, agNULL, AGSA_RC_BUSY, AGSA_RC_SUCCESS, agTRUE, agsaLLRoot_s::freeIORequests, hpDBG_VERY_LOUD, agsaIORequestDesc_s::HTag, agsaLLRoot_s::IOMap, IOMB_SIZE64, agsaIOMap_s::IORequest, agsaIORequestDesc_s::linkNode, LL_IOREQ_LOCKEQ_LOCK, MARK_OFF, MPI_CATEGORY_SAS_SATA, mpiBuildCmd(), OPC_INB_SET_OPERATOR, ossaSingleThreadedEnter(), ossaSingleThreadedLeave(), SA_ASSERT, SA_DBG1, saLlistIOAdd, saLlistIOGetHead, saLlistIORemove, agsaContext_s::sdkData, smTraceFuncEnter, smTraceFuncExit, agsaSetOperatorCmd_s::tag, agsaIOMap_s::Tag, and agsaIORequestDesc_s::valid.
Referenced by saSetOperator().
GLOBAL bit32 mpiSetPhyProfileCmd | ( | agsaRoot_t * | agRoot, |
agsaContext_t * | agContext, | ||
bit32 | Operation, | ||
bit32 | PhyId, | ||
bit32 | length, | ||
void * | buffer | ||
) |
Definition at line 440 of file sampicmd.c.
References agsaIOMap_s::agContext, agFALSE, agNULL, AGSA_RC_BUSY, AGSA_RC_SUCCESS, agTRUE, agsaIORequestDesc_s::completionCB, agsaLLRoot_s::freeIORequests, hpDBG_VERY_LOUD, agsaIORequestDesc_s::HTag, agsaLLRoot_s::IOMap, IOMB_SIZE128, agsaIOMap_s::IORequest, agsaIORequestDesc_s::linkNode, LL_IOREQ_LOCKEQ_LOCK, MARK_OFF, MPI_CATEGORY_SAS_SATA, mpiBuildCmd(), OPC_INB_SET_PHY_PROFILE, OSSA_OFFSET_OF, ossaGetPhyProfileCB(), ossaSingleThreadedEnter(), ossaSingleThreadedLeave(), SA_ASSERT, SA_DBG1, SA_DBG3, saLlistAdd, saLlistGetHead, saLlistRemove, agsaContext_s::sdkData, SHIFT8, si_memset(), smTraceFuncEnter, smTraceFuncExit, agsaIORequestDesc_s::SOP, agsaIOMap_s::Tag, and agsaIORequestDesc_s::valid.
Referenced by saSetPhyProfile().
GLOBAL bit32 mpiSMPCmd | ( | agsaRoot_t * | agRoot, |
void * | pIomb, | ||
bit16 | opcode, | ||
agsaSMPCmd_t * | payload, | ||
bit8 | inq, | ||
bit8 | outq | ||
) |
SPC MPI SMP Request Command.
This command sends to SPC for the SMP.
agRoot | Handles for this instance of SAS/SATA LLL |
pIomb | pointer of IOMB |
opcode | opcode of IOMB |
payload | pointer of payload |
inq | inbound queue number |
outq | outbound queue number |
Definition at line 901 of file sampicmd.c.
References agNULL, AGSA_RC_FAILURE, AGSA_RC_SUCCESS, BC_MASK, mpiMsgHeader_s::Header, hpDBG_VERY_LOUD, agsaLLRoot_s::inboundQueue, MPI_CATEGORY_SAS_SATA, mpiMsgProduce(), mpiICQueue_s::priority, SA_DBG3, SA_DBG6, agsaContext_s::sdkData, SHIFT24, si_memcpy(), smTraceFuncEnter, and smTraceFuncExit.
Referenced by saSendSMPIoctl(), and saSMPStart().
GLOBAL bit32 mpiVHistCapCmd | ( | agsaRoot_t * | agRoot, |
agsaContext_t * | agContext, | ||
bit32 | queueNum, | ||
bit32 | Channel, | ||
bit32 | NumBitLo, | ||
bit32 | NumBitHi, | ||
bit32 | PcieAddrLo, | ||
bit32 | PcieAddrHi, | ||
bit32 | ByteCount | ||
) |
Definition at line 358 of file sampicmd.c.
References agsaIOMap_s::agContext, agFALSE, agNULL, AGSA_RC_BUSY, AGSA_RC_SUCCESS, agTRUE, agsaIORequestDesc_s::completionCB, agsaLLRoot_s::freeIORequests, hpDBG_VERY_LOUD, agsaIORequestDesc_s::HTag, agsaLLRoot_s::IOMap, IOMB_SIZE128, agsaIOMap_s::IORequest, agsaIORequestDesc_s::linkNode, LL_IOREQ_LOCKEQ_LOCK, MARK_OFF, MPI_CATEGORY_SAS_SATA, mpiBuildCmd(), OPC_INB_GET_VHIST_CAP, OSSA_OFFSET_OF, ossaGetPhyProfileCB(), ossaSingleThreadedEnter(), ossaSingleThreadedLeave(), SA_ASSERT, SA_DBG1, SA_DBG3, saLlistAdd, saLlistGetHead, saLlistRemove, agsaContext_s::sdkData, si_memset(), smTraceFuncEnter, smTraceFuncExit, agsaIOMap_s::Tag, and agsaIORequestDesc_s::valid.
Referenced by saVhistCapture().
GLOBAL bit32 saEchoCommand | ( | agsaRoot_t * | agRoot, |
agsaContext_t * | agContext, | ||
bit32 | queueNum, | ||
void * | echoPayload | ||
) |
SAS/SATA LL API ECHO Command.
This command used to test that MPI between host and SPC IOP is operational.
agRoot | Handles for this instance of SAS/SATA hardware |
agContext | Context of SPC FW Flash Update Command |
queueNum | Inbound/outbound queue number |
echoPayload | Pointer of Echo payload of IOMB |
Definition at line 57 of file sampicmd.c.
References AGSA_RC_SUCCESS, hpDBG_VERY_LOUD, mpiEchoCmd(), smTraceFuncEnter, and smTraceFuncExit.
Referenced by ossaEchoCB(), saTimerTick(), and tiCOMPortInit().