Line 134: |
Line 134: |
| | | |
| =ARM11 User-land memory regions= | | =ARM11 User-land memory regions= |
| + | ==NATIVE_FIRM/SAFE_MODE_FIRM Userland Memory== |
| {| class="wikitable" border="1" | | {| class="wikitable" border="1" |
| |- | | |- |
Line 200: |
Line 201: |
| The physical address which memory for the application memory-type is mapped to begins at FCRAM+0, the total memory allocated for this memory-type is stored in [[Configuration_Memory]]. Applications' .text + .rodata + .data under the application memory-type is mapped at FCRAM + APPMEMALLOC - (aligned page-size for .text + .rodata + .data). The application .bss is mapped at CODEADDR - .bss size aligned down to the page size. | | The physical address which memory for the application memory-type is mapped to begins at FCRAM+0, the total memory allocated for this memory-type is stored in [[Configuration_Memory]]. Applications' .text + .rodata + .data under the application memory-type is mapped at FCRAM + APPMEMALLOC - (aligned page-size for .text + .rodata + .data). The application .bss is mapped at CODEADDR - .bss size aligned down to the page size. |
| | | |
− | == System memory details == | + | ==TWL_FIRM Userland Memory== |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! Virtual Address Base |
| + | ! Physical Address Base |
| + | ! Size |
| + | ! Description |
| + | |- |
| + | | 0x00100000 |
| + | | 0x1FFAB000 |
| + | | 0x00055000 |
| + | | |
| + | |- |
| + | | 0x00155000 |
| + | | 0x18555000 |
| + | | 0x000AB000 |
| + | | |
| + | |- |
| + | | 0x00200000 |
| + | | 0x18500000 |
| + | | 0x00100000 |
| + | | |
| + | |- |
| + | | 0x00300000 |
| + | | 0x24000000 |
| + | | 0x04000000 |
| + | | |
| + | |- |
| + | | 0x08000000 |
| + | | 0x20000000 |
| + | | 0x07E00000 |
| + | |- |
| + | | 0x1EC00000 |
| + | | 0x10100000 |
| + | | 0x00400000 |
| + | | [[IO]] |
| + | |- |
| + | | 0x1F000000 |
| + | | 0x18000000 |
| + | | 0x00600000 |
| + | | VRAM |
| + | |- |
| + | | 0x1FF00000 |
| + | | 0x1FF00000 |
| + | | 0x00080000 |
| + | | This is mapped to the DSP memory. |
| + | |} |
| + | |
| + | = System memory details = |
| 0xFFFF9000 Pointer to the current KThread instance | | 0xFFFF9000 Pointer to the current KThread instance |
| 0xFFFF9004 Pointer to the current KProcess instance | | 0xFFFF9004 Pointer to the current KProcess instance |
| 0xFFFF9010 Pointer a KThread (not sure what its role is) | | 0xFFFF9010 Pointer a KThread (not sure what its role is) |
| | | |
− | == Handles ==
| + | = Handles = |
| The handle 0xFFFF8001 is a reference to the current KProcess. | | The handle 0xFFFF8001 is a reference to the current KProcess. |
| | | |
− | == VRAM Map While Running Webbrowser ==
| + | = VRAM Map While Running Webbrowser = |
| *0x1e6000-0x22C500 -- top screen framebuffer 0(240x400x3) | | *0x1e6000-0x22C500 -- top screen framebuffer 0(240x400x3) |
| *0x22C800-0x272D00 -- top screen framebuffer 1(240x400x3) | | *0x22C800-0x272D00 -- top screen framebuffer 1(240x400x3) |