linux/drivers/infiniband/hw/hfi1/verbs_txreq.h

/* SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause */
/*
 * Copyright(c) 2016 - 2018 Intel Corporation.
 */

#ifndef HFI1_VERBS_TXREQ_H
#define HFI1_VERBS_TXREQ_H

#include <linux/types.h>
#include <linux/slab.h>

#include "verbs.h"
#include "sdma_txreq.h"
#include "iowait.h"

struct verbs_txreq {};

struct hfi1_ibdev;
struct verbs_txreq *__get_txreq(struct hfi1_ibdev *dev,
				struct rvt_qp *qp);

#define VERBS_TXREQ_GFP
static inline struct verbs_txreq *get_txreq(struct hfi1_ibdev *dev,
					    struct rvt_qp *qp)
	__must_hold(&qp->slock)
{}

static inline struct verbs_txreq *get_waiting_verbs_txreq(struct iowait_work *w)
{}

static inline bool verbs_txreq_queued(struct iowait_work *w)
{}

void hfi1_put_txreq(struct verbs_txreq *tx);
int verbs_txreq_init(struct hfi1_ibdev *dev);
void verbs_txreq_exit(struct hfi1_ibdev *dev);

#endif                         /* HFI1_VERBS_TXREQ_H */