From 3df15584d6663b330c344068dce7d36c6f27cf4b Mon Sep 17 00:00:00 2001 From: Anton Kling Date: Thu, 25 Apr 2024 21:46:31 +0200 Subject: Kernel: Add a ringbuffer This will be used later --- kernel/lib/ringbuffer.h | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 kernel/lib/ringbuffer.h (limited to 'kernel/lib/ringbuffer.h') diff --git a/kernel/lib/ringbuffer.h b/kernel/lib/ringbuffer.h new file mode 100644 index 0000000..c329af3 --- /dev/null +++ b/kernel/lib/ringbuffer.h @@ -0,0 +1,16 @@ +#include + +struct ringbuffer { + u8 *buffer; + u32 buffer_size; + u32 read_ptr; + u32 write_ptr; +}; + +int ringbuffer_init(struct ringbuffer *rb, u32 buffer_size); +u32 ringbuffer_write(struct ringbuffer *rb, const u8 *buffer, u32 len); +u32 ringbuffer_read(struct ringbuffer *rb, u8 *buffer, u32 len); +void ringbuffer_free(struct ringbuffer *rb); +#ifdef KERNEL_TEST +void ringbuffer_test(void); +#endif // KERNEL_TEST -- cgit v1.2.3