xref: /freebsd/sys/dev/dpaa/qman_portal_if.m (revision 7a40b8a89e7da2a7e8d8e132bc37885b22e9bfb1)
1fd8d34ceSJustin Hibbits#
2fd8d34ceSJustin Hibbits# Copyright (c) 2026 Justin Hibbits
3*7a40b8a8SJustin Hibbits#
4*7a40b8a8SJustin Hibbits# SPDX-License-Identifier: BSD-2-Clause
5fd8d34ceSJustin Hibbits
6fd8d34ceSJustin Hibbits#include <sys/pcpu.h>
7fd8d34ceSJustin Hibbits#include <machine/bus.h>
8fd8d34ceSJustin Hibbits#include <dev/dpaa/portals.h>
9fd8d34ceSJustin Hibbits#include <dev/dpaa/qman.h>
10fd8d34ceSJustin Hibbits#include <dev/dpaa/qman_var.h>
11fd8d34ceSJustin Hibbits
12fd8d34ceSJustin Hibbits/**
13fd8d34ceSJustin Hibbits * @brief DPAA QMan portal interface
14fd8d34ceSJustin Hibbits *
15fd8d34ceSJustin Hibbits */
16fd8d34ceSJustin HibbitsINTERFACE qman_portal;
17fd8d34ceSJustin Hibbits
18fd8d34ceSJustin HibbitsMETHOD int enqueue {
19fd8d34ceSJustin Hibbits	device_t	dev;
20fd8d34ceSJustin Hibbits	struct qman_fq	*fq;
21fd8d34ceSJustin Hibbits	struct dpaa_fd	*fd;
22fd8d34ceSJustin Hibbits};
23fd8d34ceSJustin Hibbits
24fd8d34ceSJustin HibbitsMETHOD union qman_mc_result * mc_send_raw {
25fd8d34ceSJustin Hibbits	device_t		dev;
26fd8d34ceSJustin Hibbits	union qman_mc_command	*cmd;
27fd8d34ceSJustin Hibbits};
28fd8d34ceSJustin Hibbits
29fd8d34ceSJustin HibbitsMETHOD void static_dequeue_channel {
30fd8d34ceSJustin Hibbits	device_t	dev;
31fd8d34ceSJustin Hibbits	int		channel;
32fd8d34ceSJustin Hibbits}
33fd8d34ceSJustin Hibbits
34fd8d34ceSJustin HibbitsMETHOD void static_dequeue_rm_channel {
35fd8d34ceSJustin Hibbits	device_t	dev;
36fd8d34ceSJustin Hibbits	int		channel;
37fd8d34ceSJustin Hibbits}
38