Overview   API Reference  

mmio_handler.hpp

00001 #if !defined(__MMIO_HANDLER_HPP__)
00002 #define __MMIO_HANDLER_HPP__
00003 
00004 //
00005 // local includes
00006 //
00007 #include "core/common.hpp"
00008 
00014 struct mmio_handler
00015 {
00019     static const l4_umword_t INVALID = ~0ul;
00020 
00024     virtual inline ~mmio_handler(void)
00025     {}
00026 
00032     virtual l4_umword_t read_mmio(l4_gpa_t address, access_size access_size) = 0;
00033 
00038     virtual int write_mmio(l4_gpa_t address, l4_umword_t data, access_size access_size) = 0;
00039 
00044     virtual l4_hva_t map_mmio_region(int flags, l4_gpa_t base, l4_gpa_t size=1) = 0;
00045 
00050     virtual int unmap_mmio_region(l4_gpa_t base, l4_gpa_t size=1) = 0;
00051 };
00052 
00053 #endif
00054 
00055 // ***** end of source ***** //
00056 

L4vmm Reference Manual, written by Mario Schwalbe  © 2006-2008