X-Git-Url: http://v3vee.org/palacios/gitweb/gitweb.cgi?a=blobdiff_plain;f=palacios%2Finclude%2Fpalacios%2Fvmm_io.h;h=34c04f05078d8213225ec415495e9621853ccf16;hb=cbf35ad72de3a7a1f6eee3e8b2b35d7f31df22a5;hp=14c2e76e987a85706541d0ec2410e07e9c5bd28c;hpb=a27a60b911afe29329cf93b23e274e0ef182093e;p=palacios.git diff --git a/palacios/include/palacios/vmm_io.h b/palacios/include/palacios/vmm_io.h index 14c2e76..34c04f0 100644 --- a/palacios/include/palacios/vmm_io.h +++ b/palacios/include/palacios/vmm_io.h @@ -35,18 +35,18 @@ typedef struct vmm_io_map { } vmm_io_map_t; -void add_io_hook(vmm_io_map_t * io_map, vmm_io_hook_t * io_hook); +int add_io_hook(vmm_io_map_t * io_map, vmm_io_hook_t * io_hook); -void remove_io_hook(vmm_io_map_t * io_map, vmm_io_hook_t * io_hook); +int remove_io_hook(vmm_io_map_t * io_map, vmm_io_hook_t * io_hook); vmm_io_hook_t * get_io_hook(vmm_io_map_t * io_map, uint_t port); /* External API */ -void hook_io_port(vmm_io_map_t * io_map, uint_t port, +int hook_io_port(vmm_io_map_t * io_map, uint_t port, int (*read)(ushort_t port, void * dst, uint_t length, void * priv_data), int (*write)(ushort_t port, void * src, uint_t length, void * priv_data), - void * priv_data ); + void * priv_data); int unhook_io_port(vmm_io_map_t * io_map, uint_t port); @@ -55,4 +55,8 @@ void init_vmm_io_map(vmm_io_map_t * io_map); void PrintDebugIOMap(vmm_io_map_t * io_map); + + + + #endif