Module Documentation
FM4, S6E2DH/S6E2DF/S6E2D5/S6E2D3 Series, 32-Bit Microcontroller, Graphic Driver User Manual, Doc. No. 002-04387 Rev. *A
162
11.16
Utilities for the Memory Management
Macros
#define MML_ERR_MMAN_INVALID_PARAMETER MM_ERRCODE(0x18010001)
#define MML_ERR_MMAN_NO_MEMORY MM_ERRCODE(0x18010002)
#define MML_ERR_MMAN_NO_VRAM MM_ERRCODE(0x18010003)
#define MML_ERR_MMAN_INVALID_MEMORY MM_ERRCODE(0x18010004)
#define MML_ERR_MMAN_ACCESS_FAILED MM_ERRCODE(0x18010005)
#define MM_VRAM_BASE 0xD0000000U
#define MM_VRAM_SIZE 0x00080000U
#define MM_SDRAM_BASE 0xB0080000U
#define MM_SDRAM_SIZE 0x01000000U
Typedefs
typedef void
∗
MML_MMAN_HEAP_HANDLE
Functions
MM_ERROR utMmanReset (void)
MM_ERROR utMmanCreateHeap (MML_MMAN_HEAP_HANDLE
∗
hdlmem, MM_U32 size, MM_U32
baseAddress)
MM_ERROR utMmanDestroyHeap (MML_MMAN_HEAP_HANDLE hdlmem)
MM_ERROR utMmanHeapAlloc (MML_MMAN_HEAP_HANDLE hdlmem, MM_U32 size, MM_U32 alignment,
MM_ADDR
∗
addr)
MM_ERROR utMmanHeapFree (MML_MMAN_HEAP_HANDLE hdlmem, void
∗
addr)
MM_ERROR utMmanGetSize (MML_MMAN_HEAP_HANDLE hdlmem, MM_U32
∗
size)
MM_ERROR utMmanGetFree (MML_MMAN_HEAP_HANDLE hdlmem, MM_U32
∗
size)
MM_ERROR utMmanGetLargest (MML_MMAN_HEAP_HANDLE hdlmem, MM_U32
∗
size)
11.16.1 Detailed Description
This function group is used by many tutorial samples to manage video memory (VRAM) allocation and freeing.
11.16.2 Macro Definition Documentation
11.16.2.1 #define MM_SDRAM_BASE 0xB0080000U
SDRAM Base Address .
11.16.2.2 #define MM_SDRAM_SIZE 0x01000000U
Size of external SDRAM (16 MB on Starter Kit).
11.16.2.3 #define MM_VRAM_BASE 0xD0000000U
VRAM Base Address.
11.16.2.4 #define MM_VRAM_SIZE 0x00080000U
Size of embedded VRAM (512 KB).
11.16.2.5 #define MML_ERR_MMAN_ACCESS_FAILED MM_ERRCODE(0x18010005)