cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

qedi_fw_iscsi.h (4156B)


      1/* SPDX-License-Identifier: GPL-2.0-only */
      2/*
      3 * QLogic iSCSI Offload Driver
      4 * Copyright (c) 2016 Cavium Inc.
      5 */
      6
      7#ifndef _QEDI_FW_ISCSI_H_
      8#define _QEDI_FW_ISCSI_H_
      9
     10#include "qedi_fw_scsi.h"
     11
     12struct iscsi_task_params {
     13	struct iscsi_task_context *context;
     14	struct iscsi_wqe	  *sqe;
     15	u32			  tx_io_size;
     16	u32			  rx_io_size;
     17	u16			  conn_icid;
     18	u16			  itid;
     19	u8			  cq_rss_number;
     20};
     21
     22struct iscsi_conn_params {
     23	u32	first_burst_length;
     24	u32	max_send_pdu_length;
     25	u32	max_burst_length;
     26	bool	initial_r2t;
     27	bool	immediate_data;
     28};
     29
     30/* @brief init_initiator_read_iscsi_task - initializes iSCSI Initiator Read
     31 * task context.
     32 *
     33 * @param task_params	  - Pointer to task parameters struct
     34 * @param conn_params	  - Connection Parameters
     35 * @param cmd_params	  - command specific parameters
     36 * @param cmd_pdu_header  - PDU Header Parameters
     37 * @param sgl_task_params - Pointer to SGL task params
     38 * @param dif_task_params - Pointer to DIF parameters struct
     39 */
     40int init_initiator_rw_iscsi_task(struct iscsi_task_params *task_params,
     41				 struct iscsi_conn_params *conn_params,
     42				 struct scsi_initiator_cmd_params *cmd_params,
     43				 struct iscsi_cmd_hdr *cmd_pdu_header,
     44				 struct scsi_sgl_task_params *tx_sgl_params,
     45				 struct scsi_sgl_task_params *rx_sgl_params,
     46				 struct scsi_dif_task_params *dif_task_params);
     47
     48/* @brief init_initiator_login_request_task - initializes iSCSI Initiator Login
     49 * Request task context.
     50 *
     51 * @param task_params		  - Pointer to task parameters struct
     52 * @param login_req_pdu_header    - PDU Header Parameters
     53 * @param tx_sgl_task_params	  - Pointer to SGL task params
     54 * @param rx_sgl_task_params	  - Pointer to SGL task params
     55 */
     56int init_initiator_login_request_task(struct iscsi_task_params *task_params,
     57				      struct iscsi_login_req_hdr *login_header,
     58				      struct scsi_sgl_task_params *tx_params,
     59				      struct scsi_sgl_task_params *rx_params);
     60
     61/* @brief init_initiator_nop_out_task - initializes iSCSI Initiator NOP Out
     62 * task context.
     63 *
     64 * @param task_params		- Pointer to task parameters struct
     65 * @param nop_out_pdu_header    - PDU Header Parameters
     66 * @param tx_sgl_task_params	- Pointer to SGL task params
     67 * @param rx_sgl_task_params	- Pointer to SGL task params
     68 */
     69int init_initiator_nop_out_task(struct iscsi_task_params *task_params,
     70				struct iscsi_nop_out_hdr *nop_out_pdu_header,
     71				struct scsi_sgl_task_params *tx_sgl_params,
     72				struct scsi_sgl_task_params *rx_sgl_params);
     73
     74/* @brief init_initiator_logout_request_task - initializes iSCSI Initiator
     75 * Logout Request task context.
     76 *
     77 * @param task_params		- Pointer to task parameters struct
     78 * @param logout_pdu_header  - PDU Header Parameters
     79 * @param tx_sgl_task_params	- Pointer to SGL task params
     80 * @param rx_sgl_task_params	- Pointer to SGL task params
     81 */
     82int init_initiator_logout_request_task(struct iscsi_task_params *task_params,
     83				       struct iscsi_logout_req_hdr *logout_hdr,
     84				       struct scsi_sgl_task_params *tx_params,
     85				       struct scsi_sgl_task_params *rx_params);
     86
     87/* @brief init_initiator_tmf_request_task - initializes iSCSI Initiator TMF
     88 * task context.
     89 *
     90 * @param task_params	- Pointer to task parameters struct
     91 * @param tmf_pdu_header - PDU Header Parameters
     92 */
     93int init_initiator_tmf_request_task(struct iscsi_task_params *task_params,
     94				    struct iscsi_tmf_request_hdr *tmf_header);
     95
     96/* @brief init_initiator_text_request_task - initializes iSCSI Initiator Text
     97 * Request task context.
     98 *
     99 * @param task_params		     - Pointer to task parameters struct
    100 * @param text_request_pdu_header    - PDU Header Parameters
    101 * @param tx_sgl_task_params	     - Pointer to Tx SGL task params
    102 * @param rx_sgl_task_params	     - Pointer to Rx SGL task params
    103 */
    104int init_initiator_text_request_task(struct iscsi_task_params *task_params,
    105				     struct iscsi_text_request_hdr *text_header,
    106				     struct scsi_sgl_task_params *tx_params,
    107				     struct scsi_sgl_task_params *rx_params);
    108
    109/* @brief init_cleanup_task - initializes Clean task (SQE)
    110 *
    111 * @param task_params - Pointer to task parameters struct
    112 */
    113int init_cleanup_task(struct iscsi_task_params *task_params);
    114#endif