ビルドターゲットごとのメモリマップを整理。

git-svn-id: file:///Volumes/Transfer/gigaleak_20231201/2020-09-30%20-%20paladin.7z/paladin/ctr_firmware@251 b871894f-2f95-9b40-918c-086798483c85
This commit is contained in:
nakasima 2009-02-04 10:51:59 +00:00
parent 847aa44731
commit c2bc8a2945
14 changed files with 201 additions and 65 deletions

View File

@ -18,6 +18,7 @@
#define BROM_HW_ARM11_MMAP_APP_H_
#include <brom/memorymap.h>
#include <app/hw/ARM11/mmap_main.h>
#ifdef __cplusplus
extern "C" {
@ -26,36 +27,7 @@ extern "C" {
//------------------------------------- HW_APP
#define HW_APP HW_MAIN_MEM
#define HW_APP_END HW_APP_STACK
#define HW_APP_SIZE (HW_APP_STACK - HW_MAIN_MEM)
//------------------------------------- HW_APP_STACK
#define HW_APP_STACK (HW_APP_STACK_END - HW_APP_STACK_SIZE)
#define HW_APP_STACK_END HW_APP_MMU_TBL
#define HW_APP_STACK_SIZE 0x4000 // 16KB
#define HW_APP_SVC_STACK (HW_APP_SVC_STACK_END - HW_APP_SVC_STACK_SIZE)
#define HW_APP_SVC_STACK_END HW_APP_STACK_END
#define HW_APP_SVC_STACK_SIZE 0x100 // 256B
#define HW_APP_IRQ_STACK (HW_APP_IRQ_STACK_END - HW_APP_IRQ_STACK_SIZE)
#define HW_APP_IRQ_STACK_END HW_APP_SVC_STACK
#define HW_APP_IRQ_STACK_SIZE (0x1000 - HW_APP_SVC_STACK_SIZE) // 4KB - 256B
#define HW_APP_SYS_STACK (HW_APP_SYS_STACK_END - HW_APP_SYS_STACK_SIZE)
#define HW_APP_SYS_STACK_END HW_APP_IRQ_STACK
#define HW_APP_SYS_STACK_SIZE (HW_APP_STACK_SIZE - HW_APP_IRQ_STACK_SIZE - HW_APP_SVC_STACK_SIZE) // 12KB
//------------------------------------- HW_APP_MMU_TBL
#define HW_APP_MMU_TBL (HW_APP_MMU_TBL_END - HW_APP_MMU_TBL_SIZE)
#define HW_APP_MMU_TBL_END HW_MAIN_MEM_END
#define HW_APP_MMU_TBL_SIZE (HW_APP_MMU_T1_SIZE + HW_APP_MMU_T2_SIZE) // 32KB
#define HW_APP_MMU_T1 HW_APP_MMU_TBL
#define HW_APP_MMU_T2 HW_APP_MMU_T1_END
#define HW_APP_MMU_T1_END (HW_APP_MMU_T1 + HW_APP_MMU_T1_SIZE)
#define HW_APP_MMU_T2_END (HW_APP_MMU_T2 + HW_APP_MMU_T2_SIZE)
#define HW_APP_MMU_T1_SIZE 0x4000 // 16KB
#define HW_APP_MMU_T2_SIZE 0x4000 // 16KB
#define HW_APP_SIZE (HW_APP_END - HW_APP)
#ifdef __cplusplus

View File

@ -0,0 +1,60 @@
/*---------------------------------------------------------------------------*
Project: CtrBrom - HW - include
File: mmap_main.h
Copyright 2009 Nintendo. All rights reserved.
These coded instructions, statements, and computer programs contain
proprietary information of Nintendo of America Inc. and/or Nintendo
Company Ltd., and are protected by Federal copyright law. They may
not be disclosed to third parties or copied or duplicated in any form,
in whole or in part, without the prior written consent of Nintendo.
$Date:: $
$Rev$
$Author$
*---------------------------------------------------------------------------*/
#ifndef BROM_HW_ARM11_MMAP_MAIN_H_
#define BROM_HW_ARM11_MMAP_MAIN_H_
#ifdef __cplusplus
extern "C" {
#endif
// for OS
//------------------------------------- HW_APP_STACK
#define HW_APP_STACK (HW_APP_STACK_END - HW_APP_STACK_SIZE)
#define HW_APP_STACK_END HW_APP_MMU_TBL
#define HW_APP_STACK_SIZE 0x4000 // 16KB
#define HW_APP_SVC_STACK (HW_APP_SVC_STACK_END - HW_APP_SVC_STACK_SIZE)
#define HW_APP_SVC_STACK_END HW_APP_STACK_END
#define HW_APP_SVC_STACK_SIZE 0x100 // 256B
#define HW_APP_IRQ_STACK (HW_APP_IRQ_STACK_END - HW_APP_IRQ_STACK_SIZE)
#define HW_APP_IRQ_STACK_END HW_APP_SVC_STACK
#define HW_APP_IRQ_STACK_SIZE (0x1000 - HW_APP_SVC_STACK_SIZE) // 4KB - 256B
#define HW_APP_SYS_STACK (HW_APP_SYS_STACK_END - HW_APP_SYS_STACK_SIZE)
#define HW_APP_SYS_STACK_END HW_APP_IRQ_STACK
#define HW_APP_SYS_STACK_SIZE (HW_APP_STACK_SIZE - HW_APP_IRQ_STACK_SIZE - HW_APP_SVC_STACK_SIZE) // 12KB
//------------------------------------- HW_APP_MMU_TBL
#define HW_APP_MMU_TBL (HW_APP_MMU_TBL_END - HW_APP_MMU_TBL_SIZE)
#define HW_APP_MMU_TBL_END HW_MAIN_MEM_END
#define HW_APP_MMU_TBL_SIZE (HW_APP_MMU_T1_SIZE + HW_APP_MMU_T2_SIZE) // 32KB
#define HW_APP_MMU_T1 HW_APP_MMU_TBL
#define HW_APP_MMU_T2 HW_APP_MMU_T1_END
#define HW_APP_MMU_T1_END (HW_APP_MMU_T1 + HW_APP_MMU_T1_SIZE)
#define HW_APP_MMU_T2_END (HW_APP_MMU_T2 + HW_APP_MMU_T2_SIZE)
#define HW_APP_MMU_T1_SIZE 0x4000 // 16KB
#define HW_APP_MMU_T2_SIZE 0x4000 // 16KB
#ifdef __cplusplus
} /* extern "C" */
#endif
/* BROM_HW_ARM11_MMAP_MAIN_H_ */
#endif

View File

@ -0,0 +1,38 @@
/*---------------------------------------------------------------------------*
Project: CtrBrom - HW - include
File: mmap_app.h
Copyright 2009 Nintendo. All rights reserved.
These coded instructions, statements, and computer programs contain
proprietary information of Nintendo of America Inc. and/or Nintendo
Company Ltd., and are protected by Federal copyright law. They may
not be disclosed to third parties or copied or duplicated in any form,
in whole or in part, without the prior written consent of Nintendo.
$Date:: $
$Rev$
$Author$
*---------------------------------------------------------------------------*/
#ifndef BROM_APP_HW_ARM9_MMAP_APP_H_
#define BROM_APP_HW_ARM9_MMAP_APP_H_
#include <brom/hw/ARM9/mmap_brom.h>
#include <app/hw/ARM9/mmap_tcm.h>
#ifdef __cplusplus
extern "C" {
#endif
//------------------------------------- APP
#define HW_APP HW_PRV_WRAM_SYSRV_END
#define HW_APP_END (HW_APP + HW_APP_SIZE)
#define HW_APP_SIZE (HW_PRV_WRAM_SIZE - HW_PRV_WRAM_SYSRV_SIZE)
#ifdef __cplusplus
} /* extern "C" */
#endif
/* BROM_APP_HW_ARM9_MMAP_APP_H_ */
#endif

View File

@ -0,0 +1,52 @@
/*---------------------------------------------------------------------------*
Project: CtrBrom - HW - include
File: mmap_tcm.h
Copyright 2009 Nintendo. All rights reserved.
These coded instructions, statements, and computer programs contain
proprietary information of Nintendo of America Inc. and/or Nintendo
Company Ltd., and are protected by Federal copyright law. They may
not be disclosed to third parties or copied or duplicated in any form,
in whole or in part, without the prior written consent of Nintendo.
$Date:: $
$Rev$
$Author$
*---------------------------------------------------------------------------*/
#ifndef BROM_APP_HW_ARM9_MMAP_TCM_H_
#define BROM_APP_HW_ARM9_MMAP_TCM_H_
#ifdef __cplusplus
extern "C" {
#endif
// DTCM
//------------------------------------- HW_APP_STACK
#define HW_APP_STACK (HW_APP_STACK_END - HW_APP_STACK_SIZE)
#define HW_APP_STACK_END HW_DTCM_END
#define HW_APP_STACK_SIZE 0x1000 // 4KB
#define HW_APP_SVC_STACK (HW_APP_SVC_STACK_END - HW_APP_SVC_STACK_SIZE)
#define HW_APP_SVC_STACK_END HW_APP_STACK_END
#define HW_APP_SVC_STACK_SIZE 0x100 // 256B
#define HW_APP_IRQ_STACK (HW_APP_IRQ_STACK_END - HW_APP_IRQ_STACK_SIZE)
#define HW_APP_IRQ_STACK_END HW_APP_SVC_STACK
#define HW_APP_IRQ_STACK_SIZE 0x400 // 1KB
#define HW_APP_SYS_STACK (HW_APP_SYS_STACK_END - HW_APP_SYS_STACK_SIZE)
#define HW_APP_SYS_STACK_END HW_APP_IRQ_STACK
#define HW_APP_SYS_STACK_SIZE (HW_APP_STACK_SIZE - HW_APP_IRQ_STACK_SIZE - HW_APP_SVC_STACK_SIZE) // 2.75KB
// ITCM
// no reserved
#ifdef __cplusplus
} /* extern "C" */
#endif
/* BROM_APP_HW_ARM9_MMAP_TCM_H_ */
#endif

View File

@ -23,6 +23,8 @@
extern "C" {
#endif
// for OS
//------------------------------------- HW_BROM_STACK
#define HW_BROM_STACK (HW_BROM_STACK_END - HW_BROM_STACK_SIZE)
#define HW_BROM_STACK_END HW_BROM_MMU_TBL
@ -52,12 +54,18 @@ extern "C" {
#define HW_BROM_MMU_T1_SIZE 0x4000 // 16KB
#define HW_BROM_MMU_T2_SIZE 0x2000 // 8KB
//------------------------------------- BROM_SYSRV
#define HW_BROM_SYSRV HW_AXI_WRAM_SHARED_SYS
#define HW_BROM_SYSRV_END (HW_BROM_SYSRV + HW_BROM_SYSRV_SIZE)
#define HW_BROM_SYSRV_SIZE HW_AXI_WRAM_SHARED_SYS_SIZE
// for BROM
//------------------------------------- HW_BROM_WRAM
#define HW_BROM_WRAM (HW_BROM_WRAM_END - HW_BROM_WRAM_SIZE)
#define HW_BROM_WRAM_END HW_BROM_STACK
#define HW_BROM_WRAM_SIZE 0x8000 // 32KB
//------------------------------------- HW_BROM_TO_FIRM_BUF
#define HW_BROM_TO_FIRM_BUF HW_FIRM_FROM_BROM_BUF // defined in mmap_firm.h
#define HW_BROM_TO_FIRM_BUF_END HW_FIRM_FROM_BROM_BUF_END

View File

@ -43,11 +43,6 @@ extern "C" {
#define HW_BROM_SEC_END (HW_BROM_SEC + HW_BROM_SEC_SIZE)
#define HW_BROM_SEC_SIZE HW_BROM_NML_SIZE
//------------------------------------- BROM_WRAM
#define HW_BROM_WRAM (HW_BROM_WRAM_END - HW_BROM_WRAM_SIZE)
#define HW_BROM_WRAM_END HW_BROM_STACK
#define HW_BROM_WRAM_SIZE 0x8000 // 32KB
#ifdef __cplusplus
} /* extern "C" */

View File

@ -51,17 +51,6 @@ extern "C" {
#define HW_BROM_SEC_END (HW_BROM_SEC + HW_BROM_SEC_SIZE)
#define HW_BROM_SEC_SIZE HW_BROM_NML_SIZE
//------------------------------------- BROM_WRAM
#define HW_BROM_WRAM HW_DTCM
#define HW_BROM_WRAM_END (HW_BROM_WRAM + HW_BROM_WRAM_SIZE)
#define HW_BROM_WRAM_SIZE (HW_DTCM_SIZE - HW_BROM_STACK_SIZE)
//------------------------------------- HW_BROM_CACHE_DEBUG_BUF
#define HW_BROM_CACHE_DEBUG_BUF HW_ITCM
#define HW_BROM_CACHE_DEBUG_BUF_END (HW_BROM_CACHE_DEBUG_BUF + HW_BROM_CACHE_DEBUG_BUF_SIZE)
#define HW_BROM_CACHE_DEBUG_BUF_SIZE (HW_ICACHE_SIZE + HW_DCACHE_SIZE + HW_ICACHE_TAG_SIZE + HW_DCACHE_TAG_SIZE) // 13.5KB
#ifdef __cplusplus
} /* extern "C" */

View File

@ -22,6 +22,13 @@
extern "C" {
#endif
// DTCM
//------------------------------------- HW_BROM_WRAM
#define HW_BROM_WRAM HW_DTCM
#define HW_BROM_WRAM_END (HW_BROM_WRAM + HW_BROM_WRAM_SIZE)
#define HW_BROM_WRAM_SIZE (HW_DTCM_SIZE - HW_BROM_STACK_SIZE)
//------------------------------------- HW_BROM_STACK
#define HW_BROM_STACK (HW_BROM_STACK_END - HW_BROM_STACK_SIZE)
#define HW_BROM_STACK_END HW_DTCM_END
@ -39,6 +46,12 @@ extern "C" {
#define HW_BROM_SYS_STACK_END HW_BROM_IRQ_STACK
#define HW_BROM_SYS_STACK_SIZE (HW_BROM_STACK_SIZE - HW_BROM_IRQ_STACK_SIZE - HW_BROM_SVC_STACK_SIZE) // 2.75KB
// ITCM
//------------------------------------- HW_BROM_CACHE_DEBUG_BUF
#define HW_BROM_CACHE_DEBUG_BUF HW_FIRM_CACHE_DEBUG_BUF // defined in mmap_firm.h
#define HW_BROM_CACHE_DEBUG_BUF_END HW_FIRM_CACHE_DEBUG_BUF_END
#define HW_BROM_CACHE_DEBUG_BUF_SIZE HW_FIRM_CACHE_DEBUG_BUF_SIZE // 13.5KB
//------------------------------------- HW_BROM_TO_FIRM_BUF
#define HW_BROM_TO_FIRM_BUF HW_FIRM_FROM_BROM_BUF // defined in mmap_firm.h

View File

@ -19,7 +19,7 @@
//
#define SDK_ASM
#include <app/hw/ARM11/mmap_app.h>
#include <app/memorymap.h>
LOAD_STATIC HW_APP HW_APP_SIZE

View File

@ -19,11 +19,7 @@
//
#define SDK_ASM
#include <brom/memorymap.h>
#define HW_APP HW_PRV_WRAM_SYSRV_END
#define HW_APP_END (HW_APP + HW_APP_SIZE)
#define HW_APP_SIZE (HW_PRV_WRAM_SIZE - HW_PRV_WRAM_SYSRV_SIZE)
#include <app/memorymap.h>
LOAD_STATIC HW_APP HW_APP_SIZE

View File

@ -23,6 +23,8 @@
extern "C" {
#endif
// for OS
//------------------------------------- HW_FIRM_STACK
#define HW_FIRM_STACK (HW_FIRM_STACK_END - HW_FIRM_STACK_SIZE)
#define HW_FIRM_STACK_END HW_FIRM_MMU_TBL
@ -52,6 +54,13 @@ extern "C" {
#define HW_FIRM_MMU_T1_SIZE 0x4000 // 16KB
#define HW_FIRM_MMU_T2_SIZE 0x2000 // 8KB
// for FIRM
//------------------------------------- HW_FIRM_FROM_BROM_BUF
#define HW_FIRM_FROM_BROM_BUF (HW_FIRM_FROM_BROM_BUF_END - HW_FIRM_FROM_BROM_BUF_SIZE) // 24KB
#define HW_FIRM_FROM_BROM_BUF_END HW_AXI_WRAM_SHARED // 8KB
#define HW_FIRM_FROM_BROM_BUF_SIZE 0x4000 // 16KB
#ifdef __cplusplus
} /* extern "C" */

View File

@ -28,11 +28,6 @@ extern "C" {
#define HW_FIRM_END HW_FIRM_STACK
#define HW_FIRM_SIZE (HW_FIRM_END - HW_FIRM) // 512KB - 48KB
//------------------------------------- HW_FIRM_FROM_BROM_BUF
#define HW_FIRM_FROM_BROM_BUF (HW_FIRM_FROM_BROM_BUF_END - HW_FIRM_FROM_BROM_BUF_SIZE) // 24KB
#define HW_FIRM_FROM_BROM_BUF_END HW_AXI_WRAM_SHARED // 8KB
#define HW_FIRM_FROM_BROM_BUF_SIZE 0x4000 // 16KB
#ifdef __cplusplus
} /* extern "C" */
#endif

View File

@ -24,14 +24,9 @@ extern "C" {
#endif
//------------------------------------- FIRM
#define HW_FIRM HW_PRV_WRAM
#define HW_FIRM HW_PRV_WRAM_SYSRV_END
#define HW_FIRM_END (HW_FIRM + HW_FIRM_SIZE)
#define HW_FIRM_SIZE 0x100000 // 1MB
//------------------------------------- HW_FIRM_FROM_BROM_BUF
#define HW_FIRM_FROM_BROM_BUF (HW_FIRM_FROM_BROM_BUF_END - HW_FIRM_FROM_BROM_BUF_SIZE)
#define HW_FIRM_FROM_BROM_BUF_END (HW_ITCM_END - 0x1000) // END - 4KB
#define HW_FIRM_FROM_BROM_BUF_SIZE 0x3000 // 12KB
#define HW_FIRM_SIZE (HW_PRV_WRAM_SIZE - HW_PRV_WRAM_SYSRV_SIZE)
#ifdef __cplusplus
} /* extern "C" */

View File

@ -22,6 +22,8 @@
extern "C" {
#endif
// DTCM
//------------------------------------- HW_FIRM_STACK
#define HW_FIRM_STACK (HW_FIRM_STACK_END - HW_FIRM_STACK_SIZE)
#define HW_FIRM_STACK_END HW_DTCM_END
@ -39,6 +41,18 @@ extern "C" {
#define HW_FIRM_SYS_STACK_END HW_FIRM_IRQ_STACK
#define HW_FIRM_SYS_STACK_SIZE (HW_FIRM_STACK_SIZE - HW_FIRM_IRQ_STACK_SIZE - HW_FIRM_SVC_STACK_SIZE) // 2.75KB
// ITCM
//------------------------------------- HW_FIRM_CACHE_DEBUG_BUF
#define HW_FIRM_CACHE_DEBUG_BUF HW_ITCM
#define HW_FIRM_CACHE_DEBUG_BUF_END (HW_FIRM_CACHE_DEBUG_BUF + HW_FIRM_CACHE_DEBUG_BUF_SIZE)
#define HW_FIRM_CACHE_DEBUG_BUF_SIZE (HW_ICACHE_SIZE + HW_DCACHE_SIZE + HW_ICACHE_TAG_SIZE + HW_DCACHE_TAG_SIZE) // 13.5KB
//------------------------------------- HW_FIRM_FROM_BROM_BUF
#define HW_FIRM_FROM_BROM_BUF (HW_FIRM_FROM_BROM_BUF_END - HW_FIRM_FROM_BROM_BUF_SIZE)
#define HW_FIRM_FROM_BROM_BUF_END (HW_ITCM_END - 0x1000) // END - 4KB
#define HW_FIRM_FROM_BROM_BUF_SIZE 0x3000 // 12KB
#ifdef __cplusplus
} /* extern "C" */