72 #ifndef SYSTEM_PORTABLE_INC_LLD_OC_MEM_LLD_H_ 73 #define SYSTEM_PORTABLE_INC_LLD_OC_MEM_LLD_H_ 76 #include <oc_errors.h> 85 #define _________________________________________DEFINITIONS_SECTION________________________________________________________________________ 97 #define oC_MEM_LLD_MEMORY_ALIGNMENT oC_MCS_MEMORY_ALIGNMENT 105 #define oC_MEM_LLD_STACK_ALIGNMENT oC_MCS_STACK_MEMORY_ALIGNMENT 140 #undef _________________________________________DEFINITIONS_SECTION________________________________________________________________________ 148 #define _________________________________________TYPES_SECTION_____________________________________________________________________________ 169 #undef _________________________________________TYPES_SECTION_____________________________________________________________________________ 177 #define _________________________________________FUNCTIONS_SECTION__________________________________________________________________________ 653 #undef _________________________________________FUNCTIONS_SECTION__________________________________________________________________________ void * oC_MEM_LLD_GetFlashEndAddress(void)
returns end address of the flash
bool oC_MEM_LLD_SetMemoryAccessMode(oC_MEM_LLD_MemoryAccessMode_t Mode)
Change current memory access mode.
bool oC_MEM_LLD_IsMemoryFaultInterruptTurnedOn(void)
checks if memory fault interrupt is turned on
void * oC_MEM_LLD_GetStackEndAddress(void)
returns end address of the stack
bool oC_MEM_LLD_IsUsedFlashAddress(const void *Address)
checks if the pointer is in used flash section
oC_ErrorCode_t oC_MEM_LLD_TurnOffBusFaultInterrupt(void)
turns off bus fault interrupt
oC_MEM_LLD_Size_t oC_MEM_LLD_GetDataSize(void)
returns size of the data section
void * oC_MEM_LLD_GetDataEndAddress(void)
returns end address of the data section
oC_ErrorCode_t oC_MEM_LLD_SetBusFaultInterrupt(oC_MEM_LLD_Interrupt_t Interrupt)
sets interrupt handler for bus fault
void * oC_MEM_LLD_GetFlashStartAddress(void)
returns start address of the flash
Memory controller is configured to allow for memory access only for regions that can be accessible by...
oC_ErrorCode_t oC_MEM_LLD_TurnOffDriver(void)
release the driver
stores configuration of the memory region
bool oC_MEM_LLD_IsExternalAddress(const void *Address)
checks if the pointer is in external section
Memory controller is configured to allow for memory access only for regions that can be accessible by...
void * oC_MEM_LLD_GetDmaRamStartAddress(void)
returns start address of the DMA RAM
const void * BaseAddress
Base address of the region - this must point to the start of the region.
oC_ErrorCode_t oC_MEM_LLD_ConfigureMemoryRegion(oC_MEM_LLD_MemoryRegionConfig_t *Config)
configures memory region
bool oC_MEM_LLD_IsFlashAddress(const void *Address)
checks if the pointer is in flash section
oC_ErrorCode_t oC_MEM_LLD_TurnOnBusFaultInterrupt(void)
turns on bus fault interrupt
void * oC_MEM_LLD_GetUsedFlashEndAddress(void)
returns used flash end address
oC_ErrorCode_t oC_MEM_LLD_TurnOnDriver(void)
initializes the driver to work
void * oC_MEM_LLD_GetHeapEndAddress(void)
returns end address of the heap
bool oC_MEM_LLD_IsBusFaultInterruptTurnedOn(void)
checks if bus fault interrupt is turned on
void * oC_MEM_LLD_GetBssEndAddress(void)
returns end address of the Bss section
oC_MEM_LLD_Size_t oC_MEM_LLD_GetUsedFlashSize(void)
returns size of the used flash section
oC_MEM_LLD_Size_t oC_MEM_LLD_GetDmaRamSize(void)
returns size of the DMA ram
oC_Access_t UserAccess
Definition of access for user space.
bool Cachable
True if the region should be cacheable - If you set a region to be cacheable: When you load from that...
oC_Access_t PrivilegedAccess
Definition of access for privileged space (portable or core)
Memory controller is configured to allow for memory access for regions that can be accessible by a pr...
bool oC_MEM_LLD_IsHeapAddress(const void *Address)
checks if the pointer is in heap section
oC_MemorySize_t Size
Size of the region.
oC_Access_t
Type for storing access (R/W/RW)
uint32_t RegionNumber
(optional) Number of the region to configure.
Memory controller is configured to allow for memory access for regions that can be accessible by a pr...
oC_MEM_LLD_MemoryAccessMode_t
stores access memory mode
oC_MEM_LLD_Size_t oC_MEM_LLD_GetRamSize(void)
returns size of the ram
oC_MEM_LLD_Size_t oC_MEM_LLD_GetHeapSize(void)
returns size of the heap
Contains machine core specific functions.
oC_MEM_LLD_Size_t oC_MEM_LLD_GetFlashSize(void)
returns size of the flash section
void * oC_MEM_LLD_GetRamEndAddress(void)
returns end address of the RAM
void * oC_MEM_LLD_GetUsedFlashStartAddress(void)
returns start address of the used flash section
oC_UInt_t oC_MEM_LLD_Size_t
type for storing size of memory
void * oC_MEM_LLD_GetBssStartAddress(void)
returns start address of the Bss section
void * oC_MEM_LLD_GetHeapStartAddress(void)
returns start address of the heap
bool Bufforable
True if the region should be bufforable - Bufferable means whether a write to the address can be buff...
The file with interface for the machine module.
bool FindFreeRegion
If true, the RegionNumber field is ignored and filled with the new value after configuration.
void * oC_MEM_LLD_GetStackStartAddress(void)
returns start address of the stack
oC_MEM_LLD_MemoryAccessMode_t oC_MEM_LLD_GetMemoryAccessMode(void)
returns currently configured memory access mode
oC_ErrorCode_t oC_MEM_LLD_SetMemoryFaultInterrupt(oC_MEM_LLD_Interrupt_t Interrupt)
sets interrupt handler for memory fault
oC_MEM_LLD_Size_t oC_MEM_LLD_GetBssSize(void)
returns size of the Bss section
bool oC_MEM_LLD_IsDmaRamAddress(const void *Address)
checks if the pointer is in DMA RAM section
oC_MEM_LLD_Size_t oC_MEM_LLD_GetAlignmentSize(void)
returns size of alignment
oC_ErrorCode_t oC_MEM_LLD_TurnOffMemoryFaultInterrupt(void)
turns off memory fault interrupt
oC_ErrorCode_t oC_MEM_LLD_TurnOnMemoryFaultInterrupt(void)
turns on memory fault interrupt
void(* oC_MEM_LLD_Interrupt_t)(void)
type for storing memory interrupt pointers
void * oC_MEM_LLD_GetRamStartAddress(void)
returns start address of the RAM
void * oC_MEM_LLD_GetDmaRamEndAddress(void)
returns end address of the DMA RAM
oC_Power_t Power
Power state for the region (enabled or disabled)
oC_MEM_LLD_Size_t oC_MEM_LLD_GetStackSize(void)
returns size of the stack
oC_Power_t
stores registers power state
bool oC_MEM_LLD_IsRamAddress(const void *Address)
checks if the pointer is in ram section
void * oC_MEM_LLD_GetDataStartAddress(void)
returns start address of the data section