0001
0002
0003
0004
0005
0006
0007 #ifndef _QEDI_FW_SCSI_H_
0008 #define _QEDI_FW_SCSI_H_
0009
0010 #include <linux/types.h>
0011 #include <asm/byteorder.h>
0012 #include "qedi_hsi.h"
0013 #include <linux/qed/qed_if.h>
0014
0015 struct scsi_sgl_task_params {
0016 struct scsi_sge *sgl;
0017 struct regpair sgl_phys_addr;
0018 u32 total_buffer_size;
0019 u16 num_sges;
0020 bool small_mid_sge;
0021 };
0022
0023 struct scsi_dif_task_params {
0024 u32 initial_ref_tag;
0025 bool initial_ref_tag_is_valid;
0026 u16 application_tag;
0027 u16 application_tag_mask;
0028 u16 dif_block_size_log;
0029 bool dif_on_network;
0030 bool dif_on_host;
0031 u8 host_guard_type;
0032 u8 protection_type;
0033 u8 ref_tag_mask;
0034 bool crc_seed;
0035 bool tx_dif_conn_err_en;
0036 bool ignore_app_tag;
0037 bool keep_ref_tag_const;
0038 bool validate_guard;
0039 bool validate_app_tag;
0040 bool validate_ref_tag;
0041 bool forward_guard;
0042 bool forward_app_tag;
0043 bool forward_ref_tag;
0044 bool forward_app_tag_with_mask;
0045 bool forward_ref_tag_with_mask;
0046 };
0047
0048 struct scsi_initiator_cmd_params {
0049 struct scsi_sge extended_cdb_sge;
0050 struct regpair sense_data_buffer_phys_addr;
0051 };
0052 #endif