ctr_firmware/trunk/include/ctr/hw/ARM11/mmap_axi_wram.h
nakasima bad2d57a2f Thumb-SWI命令に対応。
git-svn-id: file:///Volumes/Transfer/gigaleak_20231201/2020-09-30%20-%20paladin.7z/paladin/ctr_firmware@223 b871894f-2f95-9b40-918c-086798483c85
2009-01-28 06:38:08 +00:00

81 lines
3.7 KiB
C
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/*---------------------------------------------------------------------------*
Project: CtrFirm - HW - include
File: mmap_axi_wram.h
Copyright 2008 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 CTR_HW_ARM11_AXI_WRAM_H_
#define CTR_HW_ARM11_AXI_WRAM_H_
#include <ctr/hw/common/mmap_shared.h>
#ifdef __cplusplus
extern "C" {
#endif
//---- system reserved area
#define HW_AXI_WRAM_SYSRV HW_AXI_WRAM_SHARED_SYS_A11
#define HW_AXI_WRAM_SYSRV_END HW_AXI_WRAM_SHARED_SYS_A11_END
#define HW_AXI_WRAM_SYSRV_SIZE HW_AXI_WRAM_SHARED_SYS_A11_SIZE
//---- offset in system reserved area
#ifdef SDK_ARM11
// FCRAMまで命令プリフェッチしないように配置MPCoreは8段パイプライン
#define HW_AXI_WRAM_SYSRV_OFS_INTR_VENEER 0x00
#define HW_AXI_WRAM_SYSRV_OFS_FIQ_VENEER 0x08
#define HW_AXI_WRAM_SYSRV_OFS_SWI_VENEER 0x10
#define HW_AXI_WRAM_SYSRV_OFS_UNDEF_VENEER 0x18
#define HW_AXI_WRAM_SYSRV_OFS_IABT_VENEER 0x20
#define HW_AXI_WRAM_SYSRV_OFS_DABT_VENEER 0x28
#endif // SDK_ARM11
#define HW_AXI_WRAM_SYSRV_INIT_LOCK_BUF 0x30 // for firmware
#define HW_AXI_WRAM_SYSRV_CARD_LOCK_BUF 0x34 // for firmware
#ifdef SDK_ARM11
#define HW_AXI_WRAM_SYSRV_OFS_START_VECTOR1 0x3c
#define HW_AXI_WRAM_SYSRV_OFS_INTR_CHECK1 0x40
#define HW_AXI_WRAM_SYSRV_OFS_INTR_CHECK0 0x50
#endif // SDK_ARM11
//---- system reserved area
#ifdef SDK_ARM11
#define HW_EXCP_VENEER_BUF (HW_INTR_VENEER_BUF)
#define HW_EXCP_VENEER_BUF_END (HW_EXCP_VENEER_BUF + HW_EXCP_VENEER_BUF_SIZE)
#define HW_EXCP_VENEER_BUF_SIZE (8 * 6)
#define HW_INTR_VENEER_BUF (HW_AXI_WRAM_SYSRV + HW_AXI_WRAM_SYSRV_OFS_INTR_VENEER)
#define HW_INTR_VECTOR_BUF (HW_INTR_VENEER_BUF + 4)
#define HW_FIQ_VENEER_BUF (HW_AXI_WRAM_SYSRV + HW_AXI_WRAM_SYSRV_OFS_FIQ_VENEER)
#define HW_FIQ_VECTOR_BUF (HW_FIQ_VENEER_BUF + 4)
#define HW_SWI_VENEER_BUF (HW_AXI_WRAM_SYSRV + HW_AXI_WRAM_SYSRV_OFS_SWI_VENEER)
#define HW_SWI_VECTOR_BUF (HW_SWI_VENEER_BUF + 4)
#define HW_UNDEF_VENEER_BUF (HW_AXI_WRAM_SYSRV + HW_AXI_WRAM_SYSRV_OFS_UNDEF_VENEER)
#define HW_UNDEF_VECTOR_BUF (HW_UNDEF_VENEER_BUF + 4)
#define HW_IABT_VENEER_BUF (HW_AXI_WRAM_SYSRV + HW_AXI_WRAM_SYSRV_OFS_IABT_VENEER)
#define HW_IABT_VECTOR_BUF (HW_IABT_VENEER_BUF + 4)
#define HW_DABT_VENEER_BUF (HW_AXI_WRAM_SYSRV + HW_AXI_WRAM_SYSRV_OFS_DABT_VENEER)
#define HW_DABT_VECTOR_BUF (HW_DABT_VENEER_BUF + 4)
#endif // SDK_ARM11
#define HW_INIT_LOCK_BUF (HW_AXI_WRAM_SYSRV + HW_AXI_WRAM_SYSRV_INIT_LOCK_BUF)
#define HW_CARD_LOCK_BUF (HW_AXI_WRAM_SYSRV + HW_AXI_WRAM_SYSRV_CARD_LOCK_BUF)
#ifdef SDK_ARM11
#define HW_START_VECTOR1_BUF (HW_AXI_WRAM_SYSRV + HW_AXI_WRAM_SYSRV_OFS_START_VECTOR1)
#define HW_INTR_CHECK1_BUF (HW_AXI_WRAM_SYSRV + HW_AXI_WRAM_SYSRV_OFS_INTR_CHECK1)
#define HW_INTR_CHECK0_BUF (HW_AXI_WRAM_SYSRV + HW_AXI_WRAM_SYSRV_OFS_INTR_CHECK0)
#endif // SDK_ARM11
#ifdef __cplusplus
} /* extern "C" */
#endif
/* CTR_HW_ARM11_AXI_WRAM_H_ */
#endif