Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Functions
qla_iocb.c File Reference
#include "qla_def.h"
#include "qla_target.h"
#include <linux/blkdev.h>
#include <linux/delay.h>
#include <scsi/scsi_tcq.h>

Go to the source code of this file.

Data Structures

struct  fw_dif_context
 
struct  qla2_sgx
 

Macros

#define QDSS_GOT_Q_SPACE   BIT_0
 

Functions

uint16_t qla2x00_calc_iocbs_32 (uint16_t dsds)
 
uint16_t qla2x00_calc_iocbs_64 (uint16_t dsds)
 
void qla2x00_build_scsi_iocbs_32 (srb_t *sp, cmd_entry_t *cmd_pkt, uint16_t tot_dsds)
 
void qla2x00_build_scsi_iocbs_64 (srb_t *sp, cmd_entry_t *cmd_pkt, uint16_t tot_dsds)
 
int qla2x00_start_scsi (srb_t *sp)
 
void qla2x00_start_iocbs (struct scsi_qla_host *vha, struct req_que *req)
 
int qla2x00_marker (struct scsi_qla_host *vha, struct req_que *req, struct rsp_que *rsp, uint16_t loop_id, uint16_t lun, uint8_t type)
 
int qla2x00_issue_marker (scsi_qla_host_t *vha, int ha_locked)
 
uint16_t qla24xx_calc_iocbs (scsi_qla_host_t *vha, uint16_t dsds)
 
uint16_t qla24xx_calc_dsd_lists (uint16_t dsds)
 
void qla24xx_build_scsi_iocbs (srb_t *sp, struct cmd_type_7 *cmd_pkt, uint16_t tot_dsds)
 
int qla24xx_start_scsi (srb_t *sp)
 
int qla24xx_dif_start_scsi (srb_t *sp)
 
voidqla2x00_alloc_iocbs (scsi_qla_host_t *vha, srb_t *sp)
 
int qla82xx_start_scsi (srb_t *sp)
 
int qla2x00_start_sp (srb_t *sp)
 
int qla2x00_start_bidir (srb_t *sp, struct scsi_qla_host *vha, uint32_t tot_dsds)
 

Macro Definition Documentation

#define QDSS_GOT_Q_SPACE   BIT_0

Function Documentation

void qla24xx_build_scsi_iocbs ( srb_t sp,
struct cmd_type_7 cmd_pkt,
uint16_t  tot_dsds 
)
inline

qla24xx_build_scsi_iocbs() - Build IOCB command utilizing Command Type 7 IOCB types.

: SRB command to process : Command type 3 IOCB : Total number of segments to transfer

Definition at line 736 of file qla_iocb.c.

uint16_t qla24xx_calc_dsd_lists ( uint16_t  dsds)
inline

Definition at line 716 of file qla_iocb.c.

uint16_t qla24xx_calc_iocbs ( scsi_qla_host_t vha,
uint16_t  dsds 
)
inline

qla24xx_calc_iocbs() - Determine number of Command Type 3 and Continuation Type 1 IOCBs to allocate.

: number of data segment decriptors needed

Returns the number of IOCB entries needed to store .

Definition at line 601 of file qla_iocb.c.

int qla24xx_dif_start_scsi ( srb_t sp)

qla24xx_dif_start_scsi() - Send a SCSI command to the ISP : command to send to the ISP

Returns non-zero if a failure occurred, else zero.

Definition at line 1595 of file qla_iocb.c.

int qla24xx_start_scsi ( srb_t sp)

qla24xx_start_scsi() - Send a SCSI command to the ISP : command to send to the ISP

Returns non-zero if a failure occurred, else zero.

Definition at line 1430 of file qla_iocb.c.

void* qla2x00_alloc_iocbs ( scsi_qla_host_t vha,
srb_t sp 
)

Definition at line 1807 of file qla_iocb.c.

void qla2x00_build_scsi_iocbs_32 ( srb_t sp,
cmd_entry_t cmd_pkt,
uint16_t  tot_dsds 
)

Definition at line 190 of file qla_iocb.c.

void qla2x00_build_scsi_iocbs_64 ( srb_t sp,
cmd_entry_t cmd_pkt,
uint16_t  tot_dsds 
)

qla2x00_build_scsi_iocbs_64() - Build IOCB command utilizing 64bit capable IOCB types.

: SRB command to process : Command type 3 IOCB : Total number of segments to transfer

Definition at line 248 of file qla_iocb.c.

uint16_t qla2x00_calc_iocbs_32 ( uint16_t  dsds)

qla2x00_calc_iocbs_32() - Determine number of Command Type 2 and Continuation Type 0 IOCBs to allocate.

: number of data segment decriptors needed

Returns the number of IOCB entries needed to store .

Definition at line 51 of file qla_iocb.c.

uint16_t qla2x00_calc_iocbs_64 ( uint16_t  dsds)

qla2x00_calc_iocbs_64() - Determine number of Command Type 3 and Continuation Type 1 IOCBs to allocate.

: number of data segment decriptors needed

Returns the number of IOCB entries needed to store .

Definition at line 73 of file qla_iocb.c.

int qla2x00_issue_marker ( scsi_qla_host_t vha,
int  ha_locked 
)

Definition at line 576 of file qla_iocb.c.

int qla2x00_marker ( struct scsi_qla_host vha,
struct req_que req,
struct rsp_que rsp,
uint16_t  loop_id,
uint16_t  lun,
uint8_t  type 
)

Definition at line 555 of file qla_iocb.c.

int qla2x00_start_bidir ( srb_t sp,
struct scsi_qla_host vha,
uint32_t  tot_dsds 
)

Definition at line 2737 of file qla_iocb.c.

void qla2x00_start_iocbs ( struct scsi_qla_host vha,
struct req_que req 
)

qla2x00_start_iocbs() - Execute the IOCB command

Definition at line 469 of file qla_iocb.c.

int qla2x00_start_scsi ( srb_t sp)

qla2x00_start_scsi() - Send a SCSI command to the ISP : command to send to the ISP

Returns non-zero if a failure occurred, else zero.

Definition at line 308 of file qla_iocb.c.

int qla2x00_start_sp ( srb_t sp)

Definition at line 2586 of file qla_iocb.c.

int qla82xx_start_scsi ( srb_t sp)

Definition at line 2216 of file qla_iocb.c.