skip to content
==> include/mesh/abi/input_queue.h <==
1/* @ajax/mesh-abi-input-queue: A program's input queue in its view (IQ_*).
2 *
3 * Part of alpha-c-mesh, a C port of alpha-rust-mesh (README.md says from where). */
4#ifndef MESH_ABI_INPUT_QUEUE_H
5#define MESH_ABI_INPUT_QUEUE_H
6
7#include <stdbool.h>
8#include <stddef.h>
9#include <stdint.h>
10
11/* The input queue at view PT_INPUT_OFF: the host appends bytes at
12 * IQ_DATA + (head % len) and then stores head + n (release); the program
13 * consumes from tail (`Ctx::input_pop`).  Occupies IQ_DATA + len bytes. */
14#define MESH_IQ_HEAD 0x0 /* u32 host */
15#define MESH_IQ_TAIL 0x4 /* u32 GPU */
16#define MESH_IQ_DATA 0x10
17
18#endif