18c2ecf20Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0-only */ 28c2ecf20Sopenharmony_ci/* 38c2ecf20Sopenharmony_ci * QLogic iSCSI Offload Driver 48c2ecf20Sopenharmony_ci * Copyright (c) 2016 Cavium Inc. 58c2ecf20Sopenharmony_ci */ 68c2ecf20Sopenharmony_ci 78c2ecf20Sopenharmony_ci#ifndef _QEDI_FW_SCSI_H_ 88c2ecf20Sopenharmony_ci#define _QEDI_FW_SCSI_H_ 98c2ecf20Sopenharmony_ci 108c2ecf20Sopenharmony_ci#include <linux/types.h> 118c2ecf20Sopenharmony_ci#include <asm/byteorder.h> 128c2ecf20Sopenharmony_ci#include "qedi_hsi.h" 138c2ecf20Sopenharmony_ci#include <linux/qed/qed_if.h> 148c2ecf20Sopenharmony_ci 158c2ecf20Sopenharmony_cistruct scsi_sgl_task_params { 168c2ecf20Sopenharmony_ci struct scsi_sge *sgl; 178c2ecf20Sopenharmony_ci struct regpair sgl_phys_addr; 188c2ecf20Sopenharmony_ci u32 total_buffer_size; 198c2ecf20Sopenharmony_ci u16 num_sges; 208c2ecf20Sopenharmony_ci bool small_mid_sge; 218c2ecf20Sopenharmony_ci}; 228c2ecf20Sopenharmony_ci 238c2ecf20Sopenharmony_cistruct scsi_dif_task_params { 248c2ecf20Sopenharmony_ci u32 initial_ref_tag; 258c2ecf20Sopenharmony_ci bool initial_ref_tag_is_valid; 268c2ecf20Sopenharmony_ci u16 application_tag; 278c2ecf20Sopenharmony_ci u16 application_tag_mask; 288c2ecf20Sopenharmony_ci u16 dif_block_size_log; 298c2ecf20Sopenharmony_ci bool dif_on_network; 308c2ecf20Sopenharmony_ci bool dif_on_host; 318c2ecf20Sopenharmony_ci u8 host_guard_type; 328c2ecf20Sopenharmony_ci u8 protection_type; 338c2ecf20Sopenharmony_ci u8 ref_tag_mask; 348c2ecf20Sopenharmony_ci bool crc_seed; 358c2ecf20Sopenharmony_ci bool tx_dif_conn_err_en; 368c2ecf20Sopenharmony_ci bool ignore_app_tag; 378c2ecf20Sopenharmony_ci bool keep_ref_tag_const; 388c2ecf20Sopenharmony_ci bool validate_guard; 398c2ecf20Sopenharmony_ci bool validate_app_tag; 408c2ecf20Sopenharmony_ci bool validate_ref_tag; 418c2ecf20Sopenharmony_ci bool forward_guard; 428c2ecf20Sopenharmony_ci bool forward_app_tag; 438c2ecf20Sopenharmony_ci bool forward_ref_tag; 448c2ecf20Sopenharmony_ci bool forward_app_tag_with_mask; 458c2ecf20Sopenharmony_ci bool forward_ref_tag_with_mask; 468c2ecf20Sopenharmony_ci}; 478c2ecf20Sopenharmony_ci 488c2ecf20Sopenharmony_cistruct scsi_initiator_cmd_params { 498c2ecf20Sopenharmony_ci struct scsi_sge extended_cdb_sge; 508c2ecf20Sopenharmony_ci struct regpair sense_data_buffer_phys_addr; 518c2ecf20Sopenharmony_ci}; 528c2ecf20Sopenharmony_ci#endif 53