Merge tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma
[linux-2.6-microblaze.git] / drivers / scsi / qedi / qedi_fw_scsi.h
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_SCSI_H_
8 #define _QEDI_FW_SCSI_H_
9
10 #include <linux/types.h>
11 #include <asm/byteorder.h>
12 #include "qedi_hsi.h"
13 #include <linux/qed/qed_if.h>
14
15 struct scsi_sgl_task_params {
16         struct scsi_sge *sgl;
17         struct regpair  sgl_phys_addr;
18         u32             total_buffer_size;
19         u16             num_sges;
20         bool            small_mid_sge;
21 };
22
23 struct scsi_dif_task_params {
24         u32     initial_ref_tag;
25         bool    initial_ref_tag_is_valid;
26         u16     application_tag;
27         u16     application_tag_mask;
28         u16     dif_block_size_log;
29         bool    dif_on_network;
30         bool    dif_on_host;
31         u8      host_guard_type;
32         u8      protection_type;
33         u8      ref_tag_mask;
34         bool    crc_seed;
35         bool    tx_dif_conn_err_en;
36         bool    ignore_app_tag;
37         bool    keep_ref_tag_const;
38         bool    validate_guard;
39         bool    validate_app_tag;
40         bool    validate_ref_tag;
41         bool    forward_guard;
42         bool    forward_app_tag;
43         bool    forward_ref_tag;
44         bool    forward_app_tag_with_mask;
45         bool    forward_ref_tag_with_mask;
46 };
47
48 struct scsi_initiator_cmd_params {
49         struct scsi_sge extended_cdb_sge;
50         struct regpair  sense_data_buffer_phys_addr;
51 };
52 #endif