Files
vpp/src/plugins/dev_octeon/common.h
Damjan Marion 01fe7ab88e octeon: native driver for Marvell Octeon SoC
Type: feature
Change-Id: I6898625c4e8854f777407dac3159e4c639a54860
Signed-off-by: Monendra Singh Kushwaha <kmonendra@marvell.com>
Signed-off-by: Damjan Marion <damarion@cisco.com>
2024-01-17 20:44:10 +01:00

30 lines
630 B
C

/* SPDX-License-Identifier: Apache-2.0
* Copyright (c) 2023 Cisco Systems, Inc.
*/
#ifndef _OCT_COMMON_H_
#define _OCT_COMMON_H_
#include <vppinfra/clib.h>
#include <vppinfra/format.h>
#include <vnet/vnet.h>
#include <vnet/dev/dev.h>
#include <base/roc_api.h>
static_always_inline u32
oct_aura_free_all_buffers (vlib_main_t *vm, u64 aura_handle, u16 hdr_off)
{
u32 n = 0;
u64 iova;
while ((iova = roc_npa_aura_op_alloc (aura_handle, 0)))
{
vlib_buffer_t *b = (void *) iova + hdr_off;
vlib_buffer_free_one (vm, vlib_get_buffer_index (vm, b));
n++;
}
return n;
}
#endif /* _OCT_COMMON_H_ */