diff --git a/trunk/bootrom/include/brom/hw/ARM11/mmap_axi_wram.h b/trunk/bootrom/include/brom/hw/ARM11/mmap_axi_wram.h index 0f738ef..ce85b4f 100644 --- a/trunk/bootrom/include/brom/hw/ARM11/mmap_axi_wram.h +++ b/trunk/bootrom/include/brom/hw/ARM11/mmap_axi_wram.h @@ -58,10 +58,6 @@ extern "C" { #define HW_BROM_SYSRV_END (HW_BROM_SYSRV + HW_BROM_SYSRV_SIZE) #define HW_BROM_SYSRV_SIZE HW_AXI_WRAM_SHARED_SYS_SIZE -#define HW_BROM_SYSRV_OFS_EXCP_VECTOR (HW_PRV_WRAM_SYSRV_SIZE - HW_PRV_WRAM_SYSRV_OFS_EXCP_VECTOR) -#define HW_BROM_SYSRV_OFS_INTR_CHECK (HW_PRV_WRAM_SYSRV_SIZE - HW_PRV_WRAM_SYSRV_OFS_INTR_CHECK) -#define HW_BROM_SYSRV_OFS_INTR_VECTOR (HW_PRV_WRAM_SYSRV_SIZE - HW_PRV_WRAM_SYSRV_OFS_INTR_VECTOR) - //------------------------------------- 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 diff --git a/trunk/bootrom/include/brom/hw/ARM11/mmap_brom.h b/trunk/bootrom/include/brom/hw/ARM11/mmap_brom.h index e6ef394..8f1b75e 100644 --- a/trunk/bootrom/include/brom/hw/ARM11/mmap_brom.h +++ b/trunk/bootrom/include/brom/hw/ARM11/mmap_brom.h @@ -43,11 +43,6 @@ extern "C" { #define HW_BROM_SEC_END (HW_BROM_SEC + HW_BROM_SEC_SIZE) #define HW_BROM_SEC_SIZE 0x8000 // 32KB -//------------------------------------- BROM_TEMP -#define HW_BROM_TEMP (HW_BROM_TEMP_END - HW_BROM_TEMP_SIZE) -#define HW_BROM_TEMP_END HW_BROM_WRAM -#define HW_BROM_TEMP_SIZE 0x1000 // 4KB - //------------------------------------- BROM_WRAM #define HW_BROM_WRAM (HW_BROM_WRAM_END - HW_BROM_WRAM_SIZE) #define HW_BROM_WRAM_END HW_BROM_STACK diff --git a/trunk/bootrom/include/brom/hw/ARM9/mmap_brom.h b/trunk/bootrom/include/brom/hw/ARM9/mmap_brom.h index a1a560c..ad60e12 100644 --- a/trunk/bootrom/include/brom/hw/ARM9/mmap_brom.h +++ b/trunk/bootrom/include/brom/hw/ARM9/mmap_brom.h @@ -51,15 +51,16 @@ extern "C" { #define HW_BROM_SEC_END (HW_BROM_SEC + HW_BROM_SEC_SIZE) #define HW_BROM_SEC_SIZE HW_BROM_NML_SIZE -//------------------------------------- BROM_TEMP -#define HW_BROM_TEMP (HW_BROM_TEMP_END - HW_BROM_TEMP_SIZE) -#define HW_BROM_TEMP_END HW_BROM_WRAM -#define HW_BROM_TEMP_SIZE 0x1000 // 4KB - //------------------------------------- BROM_WRAM -#define HW_BROM_WRAM (HW_BROM_WRAM_END - HW_BROM_WRAM_SIZE) -#define HW_BROM_WRAM_END HW_BROM_TO_FIRM_BUF -#define HW_BROM_WRAM_SIZE 0xB000 // 44KB +#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 diff --git a/trunk/bootrom/include/brom/hw/ARM9/mmap_tcm.h b/trunk/bootrom/include/brom/hw/ARM9/mmap_tcm.h index b163a74..1df78a0 100644 --- a/trunk/bootrom/include/brom/hw/ARM9/mmap_tcm.h +++ b/trunk/bootrom/include/brom/hw/ARM9/mmap_tcm.h @@ -25,7 +25,7 @@ extern "C" { //------------------------------------- HW_BROM_STACK #define HW_BROM_STACK (HW_BROM_STACK_END - HW_BROM_STACK_SIZE) #define HW_BROM_STACK_END HW_DTCM_END -#define HW_BROM_STACK_SIZE HW_DTCM_SIZE // 16KB +#define HW_BROM_STACK_SIZE 0x1000 // 4KB #define HW_BROM_SVC_STACK (HW_BROM_SVC_STACK_END - HW_BROM_SVC_STACK_SIZE) #define HW_BROM_SVC_STACK_END HW_BROM_STACK_END @@ -33,22 +33,13 @@ extern "C" { #define HW_BROM_IRQ_STACK (HW_BROM_IRQ_STACK_END - HW_BROM_IRQ_STACK_SIZE) #define HW_BROM_IRQ_STACK_END HW_BROM_SVC_STACK -#define HW_BROM_IRQ_STACK_SIZE (0x1000 - HW_BROM_SVC_STACK_SIZE) // 4KB - 256B +#define HW_BROM_IRQ_STACK_SIZE 0x400 // 1KB #define HW_BROM_SYS_STACK (HW_BROM_SYS_STACK_END - HW_BROM_SYS_STACK_SIZE) #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) // 12KB +#define HW_BROM_SYS_STACK_SIZE (HW_BROM_STACK_SIZE - HW_BROM_IRQ_STACK_SIZE - HW_BROM_SVC_STACK_SIZE) // 2.75KB -//------------------------------------- BROM_SYSRV -#define HW_BROM_SYSRV HW_PRV_WRAM -#define HW_BROM_SYSRV_END (HW_BROM_SYSRV + HW_BROM_SYSRV_SIZE) -#define HW_BROM_SYSRV_SIZE 0x1000 // 4KB - -#define HW_BROM_SYSRV_IOFS_EXCP_VECTOR (HW_PRV_WRAM_SYSRV_SIZE - HW_PRV_WRAM_SYSRV_OFS_EXCP_VECTOR) -#define HW_BROM_SYSRV_IOFS_INTR_CHECK (HW_PRV_WRAM_SYSRV_SIZE - HW_PRV_WRAM_SYSRV_OFS_INTR_CHECK) -#define HW_BROM_SYSRV_IOFS_INTR_VECTOR (HW_PRV_WRAM_SYSRV_SIZE - HW_PRV_WRAM_SYSRV_OFS_INTR_VECTOR) - //------------------------------------- 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 diff --git a/trunk/bootrom/include/brom/specfiles/ARM9.ldscript.template b/trunk/bootrom/include/brom/specfiles/ARM9.ldscript.template index 51d69f1..cc641a1 100644 --- a/trunk/bootrom/include/brom/specfiles/ARM9.ldscript.template +++ b/trunk/bootrom/include/brom/specfiles/ARM9.ldscript.template @@ -53,7 +53,7 @@ LOAD_NORMAL HW_BROM_NML HW_BROM_NML_SIZE #ifndef BROM_DEF_LINK_SCATLD - DTCM HW_DTCM EMPTY 0 + DTCM HW_DTCM HW_DTCM_SIZE { } @@ -67,8 +67,6 @@ LOAD_NORMAL HW_BROM_NML HW_BROM_NML_SIZE DTCM HW_DTCM HW_DTCM_SIZE { - * (.dtcm) - * (.dtcm.bss) } #endif // BROM_DEF_LINK_SCATLD diff --git a/trunk/include/ctr/hw/ARM9/mmap_global.h b/trunk/include/ctr/hw/ARM9/mmap_global.h index ce1625a..cf3cbed 100644 --- a/trunk/include/ctr/hw/ARM9/mmap_global.h +++ b/trunk/include/ctr/hw/ARM9/mmap_global.h @@ -32,7 +32,7 @@ extern "C" { #define HW_ITCM_END (HW_ITCM + HW_ITCM_SIZE) //----------------------------- DTCM -#define HW_DTCM (HW_BIOS - HW_DTCM_SIZE*4) +#define HW_DTCM 0xfff00000 #define HW_DTCM_END (HW_DTCM + HW_DTCM_SIZE) #define HW_DTCM_SIZE 0x4000 // 16KB @@ -114,10 +114,8 @@ extern "C" { //----------------------------- System ROM #ifdef SDK_MG20EMU -#define HW_BIOS_IMG 0x00000000 #define HW_BIOS 0x00000000 #else // SDK_MG20EMU -#define HW_BIOS_IMG 0xfffe0000 #define HW_BIOS 0xffff0000 #endif // SDK_MG20EMU #define HW_BIOS_END (HW_BIOS + HW_BIOS_SIZE)