linux/include/linux/qed/storage_common.h

/* SPDX-License-Identifier: (GPL-2.0-only OR BSD-3-Clause) */
/* QLogic qed NIC Driver
 * Copyright (c) 2015-2017  QLogic Corporation
 * Copyright (c) 2019-2020 Marvell International Ltd.
 */

#ifndef __STORAGE_COMMON__
#define __STORAGE_COMMON__

/*********************/
/* SCSI CONSTANTS */
/*********************/

#define SCSI_MAX_NUM_OF_CMDQS
#define BDQ_NUM_RESOURCES

#define BDQ_ID_RQ
#define BDQ_ID_IMM_DATA
#define BDQ_ID_TQ
#define BDQ_NUM_IDS

#define SCSI_NUM_SGES_SLOW_SGL_THR

#define BDQ_MAX_EXTERNAL_RING_SIZE

/* SCSI op codes */
#define SCSI_OPCODE_COMPARE_AND_WRITE
#define SCSI_OPCODE_READ_10
#define SCSI_OPCODE_WRITE_6
#define SCSI_OPCODE_WRITE_10
#define SCSI_OPCODE_WRITE_12
#define SCSI_OPCODE_WRITE_16
#define SCSI_OPCODE_WRITE_AND_VERIFY_10
#define SCSI_OPCODE_WRITE_AND_VERIFY_12
#define SCSI_OPCODE_WRITE_AND_VERIFY_16

/* iSCSI Drv opaque */
struct iscsi_drv_opaque {};

/* Scsi 2B/8B opaque union */
scsi_opaque;

/* SCSI buffer descriptor */
struct scsi_bd {};

/* Scsi Drv BDQ struct */
struct scsi_bdq_ram_drv_data {};

/* SCSI SGE entry */
struct scsi_sge {};

/* Cached SGEs section */
struct scsi_cached_sges {};

/* Scsi Drv CMDQ struct */
struct scsi_drv_cmdq {};

/* Common SCSI init params passed by driver to FW in function init ramrod */
struct scsi_init_func_params {};

/* SCSI RQ/CQ/CMDQ firmware function init parameters */
struct scsi_init_func_queues {};

/* Scsi Drv BDQ Data struct (2 BDQ IDs: 0 - RQ, 1 - Immediate Data) */
struct scsi_ram_per_bdq_resource_drv_data {};

/* SCSI SGL types */
enum scsi_sgl_mode {};

/* SCSI SGL parameters */
struct scsi_sgl_params {};

/* SCSI terminate connection params */
struct scsi_terminate_extra_params {};

/* SCSI Task Queue Element */
struct scsi_tqe {};

#endif /* __STORAGE_COMMON__ */