| /* 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); |