Skip to content

Commit

Permalink
docs: Add HowToConfigureMemory doc and integrate the memory guide in …
Browse files Browse the repository at this point in the history
…Porting_Guide

HowToConfigureMemory doc has information about memory.
HowToUseMultiHeap guide should be in HowToConfigureMemory doc.
  • Loading branch information
jeongchanKim committed Dec 12, 2017
1 parent deb2237 commit 7cd6d32
Show file tree
Hide file tree
Showing 2 changed files with 46 additions and 1 deletion.
45 changes: 45 additions & 0 deletions docs/HowToConfigureMemory.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
# How to configure Memory

## Contents
> [Configuration](#configuration)
> [Linker Scripts](#linker-scripts)
> [Multi-Heap Support](#multi-heap-support)
## Configuration
There are two configurations to configure memory, CONFIG_RAM_START and CONFIG_RAM_SIZE.
Menuconfig helps to change them as shown below:
```
cd $TIZENRT_BASEDIR
cd os
make menuconfig
```
Find configs with following step:
```
Hardware Configuration -> Chip selection -> Boot Memory Configuration
```
Set CONFIG_RAM_START as hexa value and set CONFIG_RAM_SIZE as decimal value.
```
CONFIG_RAM_START=0x02023800
CONFIG_RAM_SIZE=968704
```
Heap allocation will use these values for setting heap start and end address.

## Linker Scripts
Linker script has RAM start and size information also.
file path : *build/configs/<BOARD_NAME>/scripts/<SCRIPTS_NAME>.ld*

```
MEMORY
{
...
SRAM (rwx) : ORIGIN = 0x02023800, LENGTH = 946K
...
}
```
These value should be matched with TizenRT configuration file.

## Multi-Heap Support
TizenRT can support multi-heap, if there is another RAM partition in H/W with discontinuous address to previous one.
Please refer [How to use multiple memory map as a heap](HowToUseMultiHeap.md).


2 changes: 1 addition & 1 deletion docs/Porting_Guide.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ Understanding the TizenRT code structure and adhering to the structure helps in
1. [How to add new board](HowToAddnewBoard.md)
2. [How to use peripheral](HowToUsePeripheral.md)
3. [How to add static library](HowToAddStaticLibrary.md)
4. [How to use multiple memory as a heap](HowToUseMultiHeap.md)
4. [How to configure memory](HowToConfigureMemory.md)
5. [How to use MPU](HowToUseMPU.md)

## File System
Expand Down

0 comments on commit 7cd6d32

Please sign in to comment.