1 /* SPDX-License-Identifier: BSD-3-Clause 2 * Copyright (C) 2022 Intel Corporation. 3 * Copyright (c) 2022 NVIDIA CORPORATION & AFFILIATES. 4 * All rights reserved. 5 */ 6 7 #ifndef SPDK_INTERNAL_ACCEL_INTERNAL_H 8 #define SPDK_INTERNAL_ACCEL_INTERNAL_H 9 10 #include "spdk/stdinc.h" 11 12 #include "spdk/accel.h" 13 #include "spdk/queue.h" 14 #include "spdk/config.h" 15 16 struct module_info { 17 struct spdk_json_write_ctx *w; 18 const char *name; 19 enum accel_opcode ops[ACCEL_OPC_LAST]; 20 uint32_t num_ops; 21 }; 22 23 typedef void (*_accel_for_each_module_fn)(struct module_info *info); 24 void _accel_for_each_module(struct module_info *info, _accel_for_each_module_fn fn); 25 int _accel_get_opc_name(enum accel_opcode opcode, const char **opcode_name); 26 27 #endif 28