12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576 |
- /*
- * Copyright (c) 2006-2021, RT-Thread Development Team
- *
- * SPDX-License-Identifier: Apache-2.0
- */
- #ifndef MEMORY_LAYOUT_H__
- #define MEMORY_LAYOUT_H__
- #include "../rtconfig.h"
- /*
- * Physical Memory layout:
- *
- * +---------+ <- CONFIG_MEM_TOTAL_SIZE
- * | ...... | maybe zero
- * +---------+ <- CONFIG_MEM_MMZ_BASE + CONFIG_MEM_MMZ_SIZE
- * | |
- * | |
- * | |
- * | |
- * | |
- * | |
- * | |
- * | |
- * |---------| <- CONFIG_MEM_MMZ_BASE
- * | ...... | maybe zero
- * +---------+ <- CONFIG_MEM_RTSMART_SIZE
- * | guard | MEM_GUARD_SIZE
- * +---------+ <- End of Kerenl
- * | |
- * | |
- * +---------+
- * | heap | CONFIG_MEM_RTSMART_HEAP_SIZE
- * +---------+
- * | |
- * +---------+ <- Beginning of Kernel <- mapping to KERNEL_VADDR_START + MEM_OPENSBI_SIZE
- * | opensbi | MEM_OPENSBI_SIZE
- * +---------+ <- Beginning of Physical Memory (0) <- mapping to KERNEL_VADDR_START
- */
- #define MEM_OPENSBI_SIZE 0x20000 // 128K
- #define MEM_GUARD_SIZE 0x1000 // 4K
- /*
- * The value of CONFIG_XXX may come from rtconfig.h. This is mainly for
- * compatibility with compiling RT-Thread in the SDK environment and using
- * the SDK configuration.
- *
- * If CONFIG_XXX is defined, it means that the value comes from the SDK
- * configuration, otherwise the default configuration of bsp/k230 in RT-Thead
- * is used. The default configuration of bsp/k230 is for the 01Studio CanMV
- * development board that supports 512MB of memory.
- */
- #ifndef CONFIG_MEM_TOTAL_SIZE
- #define CONFIG_MEM_TOTAL_SIZE 0x20000000 // 512M
- #endif
- #ifndef CONFIG_MEM_RTSMART_SIZE
- #define CONFIG_MEM_RTSMART_SIZE 0x10000000 // 256M
- #endif
- #ifndef CONFIG_MEM_RTSMART_HEAP_SIZE
- #define CONFIG_MEM_RTSMART_HEAP_SIZE 0x2000000 // 32M
- #endif
- #ifndef CONFIG_MEM_MMZ_BASE
- #define CONFIG_MEM_MMZ_BASE 0x10000000 // 512M
- #endif
- #ifndef CONFIG_MEM_MMZ_SIZE
- #define CONFIG_MEM_MMZ_SIZE 0x10000000 // 256M
- #endif
- #define MEM_KERNEL_SIZE (CONFIG_MEM_RTSMART_SIZE - MEM_OPENSBI_SIZE - MEM_GUARD_SIZE)
- #endif // MEMORY_LAYOUT_H__
|