XenevaOS
Loading...
Searching...
No Matches
Macros | Functions
synchronize.h File Reference
#include "uspi/macros.h"
#include "uspi/types.h"
#include <Hal/AA64/aa64lowlevel.h>
Include dependency graph for synchronize.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define InvalidateInstructionCache()
 
#define FlushPrefetchBuffer()   isb_flush()
 
#define FlushBranchTargetCache()
 
#define DataSyncBarrier()   dsb_sy_barrier()
 
#define DataMemBarrier()   dmb_sy()
 
#define InstructionSyncBarrier()   isb_flush();
 
#define InstructionMemBarrier()   isb_flush();
 
#define CompilerBarrier()   __asm volatile ("" ::: "memory")
 

Functions

void uspi_EnterCritical (void)
 
void uspi_LeaveCritical (void)
 
void uspi_CleanAndInvalidateDataCacheRange (u32 nAddress, u32 nLength)
 

Macro Definition Documentation

◆ CompilerBarrier

#define CompilerBarrier ( )    __asm volatile ("" ::: "memory")

◆ DataMemBarrier

#define DataMemBarrier ( )    dmb_sy()

◆ DataSyncBarrier

#define DataSyncBarrier ( )    dsb_sy_barrier()

◆ FlushBranchTargetCache

#define FlushBranchTargetCache ( )

◆ FlushPrefetchBuffer

#define FlushPrefetchBuffer ( )    isb_flush()

◆ InstructionMemBarrier

#define InstructionMemBarrier ( )    isb_flush();

◆ InstructionSyncBarrier

#define InstructionSyncBarrier ( )    isb_flush();

◆ InvalidateInstructionCache

#define InvalidateInstructionCache ( )

Function Documentation

◆ uspi_CleanAndInvalidateDataCacheRange()

void uspi_CleanAndInvalidateDataCacheRange ( u32  nAddress,
u32  nLength 
)

◆ uspi_EnterCritical()

void uspi_EnterCritical ( void  )

◆ uspi_LeaveCritical()

void uspi_LeaveCritical ( void  )