1/* SPDX-License-Identifier: (BSD-3-Clause OR GPL-2.0-only) */
2/* Copyright(c) 2022 Intel Corporation */
3#ifndef QAT_ALGS_SEND_H
4#define QAT_ALGS_SEND_H
5
6#include <linux/list.h>
7#include "adf_transport_internal.h"
8
9struct qat_instance_backlog {
10	struct list_head list;
11	spinlock_t lock; /* protects backlog list */
12};
13
14struct qat_alg_req {
15	u32 *fw_req;
16	struct adf_etr_ring_data *tx_ring;
17	struct crypto_async_request *base;
18	struct list_head list;
19	struct qat_instance_backlog *backlog;
20};
21
22int qat_alg_send_message(struct qat_alg_req *req);
23void qat_alg_send_backlog(struct qat_instance_backlog *backlog);
24
25#endif
26