blob: 5011de79fa6248a29ba5c0f2d8c4f5a88e85ee5d [file] [log] [blame]
/* Copyright (c) 2009 The Regents of the University of California.
* See the COPYRIGHT files at the top of this source tree for full
* license information.
*
* Kevin Klues <klueska@cs.berkeley.edu>
*/
#pragma once
#include <ros/ring_buffer.h>
#include <ros/arch/mmu.h>
typedef enum {
SYS_begofevents, //Should always be first
SYS_shared_page_alloc_event,
SYS_shared_page_free_event,
SYS_endofevents //Should always be last
} sysevent_type_t;
#define NUM_SYSEVENT_ARGS 6
typedef struct sysevent {
sysevent_type_t type;
uint32_t args[NUM_SYSEVENT_ARGS];
} sysevent_t;
typedef struct sysevent_rsp {
int rsp;
} sysevent_rsp_t;
// Generic Sysevent Ring Buffer
#define SYSEVENTRINGSIZE PGSIZE
DEFINE_RING_TYPES(sysevent, sysevent_t, sysevent_rsp_t);