1 /* SPDX-License-Identifier: (GPL-2.0-only OR BSD-3-Clause) */ 2 /* Copyright 2021 Marvell. All rights reserved. */ 3 4 #ifndef _QED_NVMETCP_FW_FUNCS_H 5 #define _QED_NVMETCP_FW_FUNCS_H 6 7 #include <linux/kernel.h> 8 #include <linux/module.h> 9 #include <linux/pci.h> 10 #include <linux/list.h> 11 #include <linux/mm.h> 12 #include <linux/types.h> 13 #include <asm/byteorder.h> 14 #include <linux/qed/common_hsi.h> 15 #include <linux/qed/storage_common.h> 16 #include <linux/qed/nvmetcp_common.h> 17 #include <linux/qed/qed_nvmetcp_if.h> 18 19 #if IS_ENABLED(CONFIG_QED_NVMETCP) 20 21 void init_nvmetcp_host_read_task(struct nvmetcp_task_params *task_params, 22 struct nvme_tcp_cmd_pdu *cmd_pdu_header, 23 struct nvme_command *nvme_cmd, 24 struct storage_sgl_task_params *sgl_task_params); 25 void init_nvmetcp_host_write_task(struct nvmetcp_task_params *task_params, 26 struct nvme_tcp_cmd_pdu *cmd_pdu_header, 27 struct nvme_command *nvme_cmd, 28 struct storage_sgl_task_params *sgl_task_params); 29 void init_nvmetcp_init_conn_req_task(struct nvmetcp_task_params *task_params, 30 struct nvme_tcp_icreq_pdu *init_conn_req_pdu_hdr, 31 struct storage_sgl_task_params *tx_sgl_task_params, 32 struct storage_sgl_task_params *rx_sgl_task_params); 33 void init_cleanup_task_nvmetcp(struct nvmetcp_task_params *task_params); 34 35 #else /* IS_ENABLED(CONFIG_QED_NVMETCP) */ 36 37 #endif /* IS_ENABLED(CONFIG_QED_NVMETCP) */ 38 39 #endif /* _QED_NVMETCP_FW_FUNCS_H */ 40