Pyrogenesis  trunk
Functions
mahaf.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

LIB_API bool mahaf_IsPhysicalMappingDangerous ()
 
LIB_API Status mahaf_Init ()
 
LIB_API void mahaf_Shutdown ()
 
LIB_API u8 mahaf_ReadPort8 (u16 port)
 
LIB_API u16 mahaf_ReadPort16 (u16 port)
 
LIB_API u32 mahaf_ReadPort32 (u16 port)
 
LIB_API void mahaf_WritePort8 (u16 port, u8 value)
 
LIB_API void mahaf_WritePort16 (u16 port, u16 value)
 
LIB_API void mahaf_WritePort32 (u16 port, u32 value)
 
LIB_API volatile void * mahaf_MapPhysicalMemory (uintptr_t physicalAddress, size_t numBytes)
 
LIB_API void mahaf_UnmapPhysicalMemory (volatile void *virtualAddress)
 
LIB_API u64 mahaf_ReadModelSpecificRegister (u64 reg)
 
LIB_API void mahaf_WriteModelSpecificRegister (u64 reg, u64 value)
 
LIB_API u64 mahaf_ReadPerformanceMonitoringCounter (u64 reg)
 

Function Documentation

LIB_API Status mahaf_Init ( )
LIB_API bool mahaf_IsPhysicalMappingDangerous ( )
Returns
whether mapping physical memory is known to be dangerous on this platform.

callable before or after mahaf_Init.

note: mahaf_MapPhysicalMemory will complain if it is called despite this function having returned true.

LIB_API volatile void* mahaf_MapPhysicalMemory ( uintptr_t  physicalAddress,
size_t  numBytes 
)
LIB_API u64 mahaf_ReadModelSpecificRegister ( u64  reg)
LIB_API u64 mahaf_ReadPerformanceMonitoringCounter ( u64  reg)
LIB_API u16 mahaf_ReadPort16 ( u16  port)
LIB_API u32 mahaf_ReadPort32 ( u16  port)
LIB_API u8 mahaf_ReadPort8 ( u16  port)
LIB_API void mahaf_Shutdown ( )
LIB_API void mahaf_UnmapPhysicalMemory ( volatile void *  virtualAddress)
LIB_API void mahaf_WriteModelSpecificRegister ( u64  reg,
u64  value 
)
LIB_API void mahaf_WritePort16 ( u16  port,
u16  value 
)
LIB_API void mahaf_WritePort32 ( u16  port,
u32  value 
)
LIB_API void mahaf_WritePort8 ( u16  port,
u8  value 
)