FreeBSD kernel pms device code
itdio.c File Reference
Include dependency graph for itdio.c:

Go to the source code of this file.

Functions

 __FBSDID ("$FreeBSD$")
 
osGLOBAL bit32 tiINIIOStart (tiRoot_t *tiRoot, tiIORequest_t *tiIORequest, tiDeviceHandle_t *tiDeviceHandle, tiScsiInitiatorRequest_t *tiScsiRequest, void *tiRequestBody, bit32 interruptContext)
 
osGLOBAL bit32 tiINIIOStartDif (tiRoot_t *tiRoot, tiIORequest_t *tiIORequest, tiDeviceHandle_t *tiDeviceHandle, tiScsiInitiatorRequest_t *tiScsiRequest, void *tiRequestBody, bit32 interruptContext, tiDif_t *difOption)
 
osGLOBAL bit32 tiINISuperIOStart (tiRoot_t *tiRoot, tiIORequest_t *tiIORequest, tiDeviceHandle_t *tiDeviceHandle, tiSuperScsiInitiatorRequest_t *tiScsiRequest, void *tiRequestBody, bit32 interruptContext)
 
osGLOBAL bit32 tiINISMPStart (tiRoot_t *tiRoot, tiIORequest_t *tiIORequest, tiDeviceHandle_t *tiDeviceHandle, tiSMPFrame_t *tiSMPFrame, void *tiSMPBody, bit32 interruptContext)
 
osGLOBAL FORCEINLINE bit32 itdssIOPrepareSGL (tiRoot_t *tiRoot, tdIORequestBody_t *tdIORequestBody, tiSgl_t *tiSgl1, void *sglVirtualAddr)
 
osGLOBAL bit32 tiNumOfLunIOCTLreq (tiRoot_t *tiRoot, tiIORequest_t *tiIORequest, tiDeviceHandle_t *tiDeviceHandle, void *tiRequestBody, tiIOCTLPayload_t *agIOCTLPayload, void *agParam1, void *agParam2)
 

Detailed Description

This file contains initiator IO related functions in TD layer

Definition in file itdio.c.

Function Documentation

◆ __FBSDID()

__FBSDID ( "$FreeBSD$"  )

◆ itdssIOPrepareSGL()

◆ tiINIIOStart()

◆ tiINIIOStartDif()

osGLOBAL bit32 tiINIIOStartDif ( tiRoot_t tiRoot,
tiIORequest_t tiIORequest,
tiDeviceHandle_t tiDeviceHandle,
tiScsiInitiatorRequest_t tiScsiRequest,
void *  tiRequestBody,
bit32  interruptContext,
tiDif_t difOption 
)

Definition at line 603 of file itdio.c.

References tiBusy.

◆ tiINISMPStart()

◆ tiINISuperIOStart()

osGLOBAL bit32 tiINISuperIOStart ( tiRoot_t tiRoot,
tiIORequest_t tiIORequest,
tiDeviceHandle_t tiDeviceHandle,
tiSuperScsiInitiatorRequest_t tiScsiRequest,
void *  tiRequestBody,
bit32  interruptContext 
)

Definition at line 644 of file itdio.c.

References agBOOLEAN, tdsaDeviceData_s::agDevHandle, agFALSE, tdIORequestBody_s::agIORequest, agNULL, tdIORequestBody_s::agRequestType, tdsaDeviceData_s::agRoot, AGSA_RC_BUSY, AGSA_RC_FAILURE, AGSA_RC_SUCCESS, AGSA_REQ_TYPE_UNKNOWN, AGSA_SAS_ENABLE_DIF, AGSA_SAS_ENABLE_ENCRYPTION, AGSA_SSP_INIT_READ, AGSA_SSP_INIT_READ_INDIRECT, AGSA_SSP_INIT_WRITE, AGSA_SSP_INIT_WRITE_INDIRECT, tdIORequestBody_s::agSASRequestBody, tdIORequestBody_s::agSATARequestBody, tiSuperScsiInitiatorRequest::agSgl1, agTRUE, agsaSSPCmdInfoUnit_s::cdb, tiIniScsiCmnd::cdb, satIOContext_s::currentLBA, tiSuperScsiInitiatorRequest::dataDirection, agsaSSPInitiatorRequest_s::dataLength, tdsaDeviceData_s::DeviceType, agsaSSPInitiatorRequest_s::dif, tiSuperScsiInitiatorRequest::Dif, DIF_ACTION_FLAG_MASK, DIF_INSERT, agsaSSPCmdInfoUnit_s::efb_tp_taskAttribute, agsaSSPInitiatorRequest_s::encrypt, tiSuperScsiInitiatorRequest::Encrypt, tiIniScsiCmnd::expDataLength, tdIORequestBody_s::expDataLength, agsaSATAInitiatorRequest_s::fis, agsaSATAHostFis_u::fisRegHostToDev, agsaSSPInitiatorRequest_s::flag, agsaDif_s::flags, tiSuperScsiInitiatorRequest::flags, tdsaDeviceData_s::id, tdIORequestBody_s::InitiatorRegIO, satIOContext_s::interruptContext, tdIORequestBody_s::ioCompleted, tdIORequestBody_s::IOCompletionFunc, tdIORequestBody_s::ioStarted, tdIORequestBody_s::IOType, tdsaContext_s::itdsaIni, itdssIOCompleted(), itdssIOForDebugging1Completed(), itdssIOForDebugging2Completed(), itdssIOForDebugging3Completed(), itdssIOPrepareSGL(), agsaSSPCmdInfoUnit_s::lun, tiLUN::lun, tiIniScsiCmnd::lun, satIOContext_s::OrgTL, agsaContext_s::osData, tiIORequest::osData, ossaSSPCompleted(), osti_memcpy, osti_memset, satIOContext_s::pFis, satIOContext_s::pSatDevData, satIOContext_s::pScsiCmnd, satIOContext_s::pSense, satIOContext_s::ptiDeviceHandle, satIOContext_s::pTiSenseData, tdsaDeviceData_s::registered, tdIORequestBody_s::SAS, TDSASAddressID_s::sasAddressHi, tdsaDeviceData_s::SASAddressID, TDSASAddressID_s::sasAddressLo, saSSPStart(), tdIORequestBody_s::SATA, tdsaDeviceData_s::satDevData, satIOContext_s::satIntIoContext, tdIORequestBody_s::satIOContext, satIOContext_s::satOrgIOContext, tiSuperScsiInitiatorRequest::scsiCmnd, SCSIOPC_READ_10, SCSIOPC_READ_12, SCSIOPC_READ_16, SCSIOPC_READ_6, SCSIOPC_WRITE_10, SCSIOPC_WRITE_12, SCSIOPC_WRITE_16, SCSIOPC_WRITE_6, tiSenseData::senseData, tiSenseData::senseLen, tdIORequestBody_s::sensePayload, tiSuperScsiInitiatorRequest::sglVirtualAddr, tdIORequestBody_s::sglVirtualAddr, smContext_t::smData, smSuperIOStart(), agsaSSPInitiatorRequest_s::sspCmdIU, agsaSASRequestBody_u::sspInitiatorReq, agsaSSPInitiatorRequestIndirect_s::sspInitiatorReqAddrLower32, agsaSSPInitiatorRequestIndirect_s::sspInitiatorReqAddrUpper32, agsaSASRequestBody_u::sspInitiatorReqIndirect, agsaSSPInitiatorRequestIndirect_s::sspInitiatorReqLen, satIOContext_s::superIOFlag, TASK_ACA, TASK_HEAD_OF_QUEUE, TASK_ORDERED, TASK_SIMPLE, tiIniScsiCmnd::taskAttribute, TD_ASSERT, TD_SAS_DEVICE, TD_SATA_DEVICE, TD_TASK_ACA, TD_TASK_HEAD_OF_QUEUE, TD_TASK_ORDERED, TD_TASK_SIMPLE, smContext_t::tdData, tiDeviceHandle::tdData, tiRoot::tdData, tiIORequest::tdData, tdsaDeviceData_s::tdPortContext, tdsaRoot_s::tdsaAllShared, tdsaRotateQnumber(), TI_DBG1, TI_DBG2, TI_DBG3, TI_DBG4, TI_DBG5, TI_DBG6, TI_SCSI_INITIATOR_DIF, TI_SCSI_INITIATOR_ENCRYPT, TI_SCSI_INITIATOR_INDIRECT_CDB, tiBusy, tdIORequestBody_s::tiDevHandle, tiDirectionIn, tiDirectionOut, tiError, tiIONoDevice, tdIORequestBody_s::tiIORequest, satIOContext_s::tiRequestBody, satIOContext_s::tiScsiXchg, tdIORequestBody_s::tiSenseData, tiSuccess, tdIORequestBody_s::transport, and tdsaDeviceData_s::valid.

Referenced by agtiapi_StartIO().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ tiNumOfLunIOCTLreq()