blob: afac0c6eed68c9fcfe062fb4c2f1e0c535374226 [file] [log] [blame]
/*
* Copyright (c) 2025 Antmicro
* Copyright (c) 2025 Analog Devices
*
* SPDX-License-Identifier: Apache-2.0
*/
#include <zephyr/sys/ring_buffer.h>
static struct ring_buf instr_ring_buf;
static uint8_t instr_buffer[CONFIG_INSTRUMENTATION_MODE_CALLGRAPH_TRACE_BUFFER_SIZE + 1];
uint32_t instr_buffer_put_claim(uint8_t **data, uint32_t size)
{
return ring_buf_put_claim(&instr_ring_buf, data, size);
}
int instr_buffer_put_finish(uint32_t size)
{
return ring_buf_put_finish(&instr_ring_buf, size);
}
uint32_t instr_buffer_put(uint8_t *data, uint32_t size)
{
return ring_buf_put(&instr_ring_buf, data, size);
}
uint32_t instr_buffer_get_claim(uint8_t **data, uint32_t size)
{
return ring_buf_get_claim(&instr_ring_buf, data, size);
}
int instr_buffer_get_finish(uint32_t size)
{
return ring_buf_get_finish(&instr_ring_buf, size);
}
uint32_t instr_buffer_get(uint8_t *data, uint32_t size)
{
return ring_buf_get(&instr_ring_buf, data, size);
}
void instr_buffer_init(void)
{
ring_buf_init(&instr_ring_buf,
sizeof(instr_buffer), instr_buffer);
}
bool instr_buffer_is_empty(void)
{
return ring_buf_is_empty(&instr_ring_buf);
}
uint32_t instr_buffer_capacity_get(void)
{
return ring_buf_capacity_get(&instr_ring_buf);
}
uint32_t instr_buffer_space_get(void)
{
return ring_buf_space_get(&instr_ring_buf);
}