![]() |
|
|||
0001 /* SPDX-License-Identifier: GPL-2.0-only */ 0002 /* 0003 * QLogic iSCSI Offload Driver 0004 * Copyright (c) 2016 Cavium Inc. 0005 */ 0006 0007 #ifndef _QEDI_FW_ISCSI_H_ 0008 #define _QEDI_FW_ISCSI_H_ 0009 0010 #include "qedi_fw_scsi.h" 0011 0012 struct iscsi_task_params { 0013 struct iscsi_task_context *context; 0014 struct iscsi_wqe *sqe; 0015 u32 tx_io_size; 0016 u32 rx_io_size; 0017 u16 conn_icid; 0018 u16 itid; 0019 u8 cq_rss_number; 0020 }; 0021 0022 struct iscsi_conn_params { 0023 u32 first_burst_length; 0024 u32 max_send_pdu_length; 0025 u32 max_burst_length; 0026 bool initial_r2t; 0027 bool immediate_data; 0028 }; 0029 0030 /* @brief init_initiator_read_iscsi_task - initializes iSCSI Initiator Read 0031 * task context. 0032 * 0033 * @param task_params - Pointer to task parameters struct 0034 * @param conn_params - Connection Parameters 0035 * @param cmd_params - command specific parameters 0036 * @param cmd_pdu_header - PDU Header Parameters 0037 * @param sgl_task_params - Pointer to SGL task params 0038 * @param dif_task_params - Pointer to DIF parameters struct 0039 */ 0040 int init_initiator_rw_iscsi_task(struct iscsi_task_params *task_params, 0041 struct iscsi_conn_params *conn_params, 0042 struct scsi_initiator_cmd_params *cmd_params, 0043 struct iscsi_cmd_hdr *cmd_pdu_header, 0044 struct scsi_sgl_task_params *tx_sgl_params, 0045 struct scsi_sgl_task_params *rx_sgl_params, 0046 struct scsi_dif_task_params *dif_task_params); 0047 0048 /* @brief init_initiator_login_request_task - initializes iSCSI Initiator Login 0049 * Request task context. 0050 * 0051 * @param task_params - Pointer to task parameters struct 0052 * @param login_req_pdu_header - PDU Header Parameters 0053 * @param tx_sgl_task_params - Pointer to SGL task params 0054 * @param rx_sgl_task_params - Pointer to SGL task params 0055 */ 0056 int init_initiator_login_request_task(struct iscsi_task_params *task_params, 0057 struct iscsi_login_req_hdr *login_header, 0058 struct scsi_sgl_task_params *tx_params, 0059 struct scsi_sgl_task_params *rx_params); 0060 0061 /* @brief init_initiator_nop_out_task - initializes iSCSI Initiator NOP Out 0062 * task context. 0063 * 0064 * @param task_params - Pointer to task parameters struct 0065 * @param nop_out_pdu_header - PDU Header Parameters 0066 * @param tx_sgl_task_params - Pointer to SGL task params 0067 * @param rx_sgl_task_params - Pointer to SGL task params 0068 */ 0069 int init_initiator_nop_out_task(struct iscsi_task_params *task_params, 0070 struct iscsi_nop_out_hdr *nop_out_pdu_header, 0071 struct scsi_sgl_task_params *tx_sgl_params, 0072 struct scsi_sgl_task_params *rx_sgl_params); 0073 0074 /* @brief init_initiator_logout_request_task - initializes iSCSI Initiator 0075 * Logout Request task context. 0076 * 0077 * @param task_params - Pointer to task parameters struct 0078 * @param logout_pdu_header - PDU Header Parameters 0079 * @param tx_sgl_task_params - Pointer to SGL task params 0080 * @param rx_sgl_task_params - Pointer to SGL task params 0081 */ 0082 int init_initiator_logout_request_task(struct iscsi_task_params *task_params, 0083 struct iscsi_logout_req_hdr *logout_hdr, 0084 struct scsi_sgl_task_params *tx_params, 0085 struct scsi_sgl_task_params *rx_params); 0086 0087 /* @brief init_initiator_tmf_request_task - initializes iSCSI Initiator TMF 0088 * task context. 0089 * 0090 * @param task_params - Pointer to task parameters struct 0091 * @param tmf_pdu_header - PDU Header Parameters 0092 */ 0093 int init_initiator_tmf_request_task(struct iscsi_task_params *task_params, 0094 struct iscsi_tmf_request_hdr *tmf_header); 0095 0096 /* @brief init_initiator_text_request_task - initializes iSCSI Initiator Text 0097 * Request task context. 0098 * 0099 * @param task_params - Pointer to task parameters struct 0100 * @param text_request_pdu_header - PDU Header Parameters 0101 * @param tx_sgl_task_params - Pointer to Tx SGL task params 0102 * @param rx_sgl_task_params - Pointer to Rx SGL task params 0103 */ 0104 int init_initiator_text_request_task(struct iscsi_task_params *task_params, 0105 struct iscsi_text_request_hdr *text_header, 0106 struct scsi_sgl_task_params *tx_params, 0107 struct scsi_sgl_task_params *rx_params); 0108 0109 /* @brief init_cleanup_task - initializes Clean task (SQE) 0110 * 0111 * @param task_params - Pointer to task parameters struct 0112 */ 0113 int init_cleanup_task(struct iscsi_task_params *task_params); 0114 #endif
[ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
This page was automatically generated by the 2.1.0 LXR engine. The LXR team |
![]() ![]() |