📄 constant.inc
字号:
;
; ARM constants
;
ARM_CPSR_PRECISE EQU (1 << 8)
ARM_CPSR_IRQDISABLE EQU (1 << 7)
ARM_CPSR_FIQDISABLE EQU (1 << 6)
ARM_CPSR_MODE_SVC EQU 0x13
ARM_CTRL_ICACHE EQU (1 << 12)
ARM_CTRL_DCACHE EQU (1 << 2)
ARM_CTRL_MMU EQU (1 << 0)
ARM_CTRL_FLOW EQU (1 << 11)
ARM_CTRL_VECTORS EQU (1 << 13)
ARM_CTRL_FI EQU (1 << 21)
ARM_CACR_FULL EQU 0x3
ARM_AUXCR_SB EQU (1 << 2)
ARM_AUXCR_DB EQU (1 << 1)
ARM_AUXCR_HUM EQU (1 << 31)
; VFP uses coproc 10 for single-precision instructions
ARM_VFP_SP_COP EQU 10
ARM_VFP_SP_ACCESS EQU (ARM_CACR_FULL << (ARM_VFP_SP_COP*2))
; VFP uses coproc 11 for double-precision instructions
ARM_VFP_DP_COP EQU 11
ARM_VFP_DP_ACCESS EQU (ARM_CACR_FULL << (ARM_VFP_DP_COP*2))
; Configure coprocessor access control
ARM_CACR_CONFIG EQU (ARM_VFP_SP_ACCESS | ARM_VFP_DP_ACCESS)
; Peripheral Port Memory Remap Register (PPMRR)
ARM_PPMRR_SIZE_LSH EQU 0
ARM_PPMRR_SIZE_WID EQU 5
ARM_PPMRR_SIZE_256MB EQU 0x13
ARM_PPMRR_SIZE_512MB EQU 0x14
ARM_PPMRR_SIZE_1GB EQU 0x15
ARM_PPMRR_BASEADDR_LSH EQU 12
ARM_PPMRR_BASEADDR_WID EQU 20
ARM_PPMRR_SIZE EQU (ARM_PPMRR_SIZE_1GB << ARM_PPMRR_SIZE_LSH)
ARM_PPMRR_BASEADDR EQU (CSP_BASE_MEM_PA_AIPSA)
ARM_PPMRR_CONFIG EQU (ARM_PPMRR_BASEADDR | ARM_PPMRR_SIZE)
;
; L2CC constants
;
L2CC_CR_OFFSET EQU 0x100
L2CC_AUXCR_OFFSET EQU 0x104
L2CC_INVWAY_OFFSET EQU 0x77C
L2CC_DBGCR_OFFSET EQU 0xF40
;
; AVIC constants
;
AVIC_INTCNTL_OFFSET EQU 0x0000
AVIC_NIMASK_OFFSET EQU 0x0004
AVIC_INTENNUM_OFFSET EQU 0x0008
AVIC_INTDISNUM_OFFSET EQU 0x000C
AVIC_INTENABLEH_OFFSET EQU 0x0010
AVIC_INTENABLEL_OFFSET EQU 0x0014
AVIC_INTTYPEH_OFFSET EQU 0x0018
AVIC_INTTYPEL_OFFSET EQU 0x001C
AVIC_NIPRIORITY7_OFFSET EQU 0x0020
AVIC_NIPRIORITY6_OFFSET EQU 0x0024
AVIC_NIPRIORITY5_OFFSET EQU 0x0028
AVIC_NIPRIORITY4_OFFSET EQU 0x002C
AVIC_NIPRIORITY3_OFFSET EQU 0x0030
AVIC_NIPRIORITY2_OFFSET EQU 0x0034
AVIC_NIPRIORITY1_OFFSET EQU 0x0038
AVIC_NIPRIORITY0_OFFSET EQU 0x003C
AVIC_NIVECSR_OFFSET EQU 0x0040
AVIC_FIVECSR_OFFSET EQU 0x0044
AVIC_INTSRCH_OFFSET EQU 0x0048
AVIC_INTSRCL_OFFSET EQU 0x004C
AVIC_INTFRCH_OFFSET EQU 0x0050
AVIC_INTFRCL_OFFSET EQU 0x0054
AVIC_NIPNDH_OFFSET EQU 0x0058
AVIC_NIPNDL_OFFSET EQU 0x005C
AVIC_FIPNDH_OFFSET EQU 0x0060
AVIC_FIPNDL_OFFSET EQU 0x0064
AVIC_VECTOR_OFFSET EQU 0x0100
AVIC_INTCNTL_ABFFLAG EQU (1<<25)
AVIC_INTCNTL_ABFEN EQU (1<<24)
AVIC_INTCNTL_NIDIS EQU (1<<22)
AVIC_INTCNTL_FIDIS EQU (1<<21)
AVIC_INTCNTL_NIAD EQU (1<<20)
AVIC_INTCNTL_FIAD EQU (1<<19)
AVIC_INTCNTL_NM EQU (1<<18)
;
; RTC Constants
;
RTC_HOUR_MIN_COUNTER EQU 0x0000
RTC_SEC_COUNTER EQU 0x0004
RTC_HOUR_MIN_ALARM EQU 0x0008
RTC_SEC_ALARM EQU 0x000C
RTC_CONTROL EQU 0x0010
RTC_INT_STAT EQU 0x0014
RTC_INT_ENABLE EQU 0x0018
RTC_STOPWATCH EQU 0x001C
RTC_DAY_COUNTER EQU 0x0020
RTC_DAY_ALARM EQU 0x0024
;
; AIPS Constants
;
AIPSREG_MPR0_OFFSET EQU 0x0000
AIPSREG_MPR1_OFFSET EQU 0x0004
AIPSREG_PACR0_OFFSET EQU 0x0020
AIPSREG_PACR1_OFFSET EQU 0x0024
AIPSREG_PACR2_OFFSET EQU 0x0028
AIPSREG_PACR3_OFFSET EQU 0x002C
AIPSREG_OPACR0_OFFSET EQU 0x0040
AIPSREG_OPACR1_OFFSET EQU 0x0044
AIPSREG_OPACR2_OFFSET EQU 0x0048
AIPSREG_OPACR3_OFFSET EQU 0x004C
AIPSREG_OPACR4_OFFSET EQU 0x0050
;
; MAX Constants
;
MAX_MPR0_OFFSET EQU 0x0000
MAX_SGPCR0_OFFSET EQU 0x0010
MAX_MPR1_OFFSET EQU 0x0100
MAX_SGPCR1_OFFSET EQU 0x0110
MAX_MPR2_OFFSET EQU 0x0200
MAX_SGPCR2_OFFSET EQU 0x0210
MAX_MPR3_OFFSET EQU 0x0300
MAX_SGPCR3_OFFSET EQU 0x0310
MAX_MPR4_OFFSET EQU 0x0400
MAX_SGPCR4_OFFSET EQU 0x0410
MAX_MGPCR0_OFFSET EQU 0x0800
MAX_MGPCR1_OFFSET EQU 0x0900
MAX_MGPCR2_OFFSET EQU 0x0A00
MAX_MGPCR3_OFFSET EQU 0x0B00
MAX_MGPCR4_OFFSET EQU 0x0C00
MAX_MGPCR5_OFFSET EQU 0x0D00
;
; M3IF Constants
;
M3IF_M3IFCTL_OFFSET EQU 0x0000
;
; SPBA Constants
;
SPBA_PRR_OFFSET EQU 0x0000
SPBA_PRR_RAR_ARM_ACCESS EQU (1 << 0)
SPBA_PRR_RAR_DSP_ACCESS EQU (1 << 1)
SPBA_PRR_RAR_DMA_ACCESS EQU (1 << 2)
SPBA_PRR_ROI_UNOWNED EQU (0 << 16)
SPBA_PRR_ROI_ARM_OWNED EQU (1 << 16)
SPBA_PRR_ROI_DSP_OWNED EQU (2 << 16)
SPBA_PRR_ROI_DMA_OWNED EQU (3 << 16)
SPBA_PRR_RMO_UNOWNED EQU (0 << 30)
SPBA_PRR_RMO_ALT_OWNED EQU (2 << 30)
SPBA_PRR_RMO_REQ_OWNED EQU (3 << 30)
SPBA_NUM_SHARED_PERIPH EQU (14)
;
; CCM constants
;
CCM_CCMR_OFFSET EQU 0x0000
CCM_PDR0_OFFSET EQU 0x0004
CCM_RCSR_OFFSET EQU 0x000C
CCM_MPCTL_OFFSET EQU 0x0010
CCM_UPCTL_OFFSET EQU 0x0014
CCM_SPCTL_OFFSET EQU 0x0018
;
; WEIM constants
;
WEIM_CSCR0U_OFFSET EQU 0x0000
WEIM_CSCR4U_OFFSET EQU 0x0040
WEIM_CSCR0L_OFFSET EQU 0x0004
WEIM_CSCR4L_OFFSET EQU 0x0044
WEIM_CSCR0A_OFFSET EQU 0x0008
WEIM_CSCR4A_OFFSET EQU 0x0048
;
; ESDCTL constants
;
ESDCTL_ESDCTL0_OFFSET EQU 0x0000
ESDCTL_ESDCFG0_OFFSET EQU 0x0004
ESDCTL_ESDCTL1_OFFSET EQU 0x0008
ESDCTL_ESDCFG1_OFFSET EQU 0x000C
ESDCTL_ESDMISC_OFFSET EQU 0x0010
ESDCTL_ESDDLY5_OFFSET EQU 0x0030
;
; PBC constants
;
PBC_BSTAT2_OFFSET EQU 0x0002
PBC_BCTRL1_SET_OFFSET EQU 0x0004
PBC_BCTRL1_CLR_OFFSET EQU 0x0006
BSP_PBC_DSW_KITL EQU (1 << 0) ; SW3_8: ON = ACTIVE, OFF = PASSIVE
BSP_PBC_DSW_L2 EQU (1 << 1) ; SW3_7: ON = L2 enabled, OFF = L2 disabled
BSP_PBC_DSW_AHB_CLK EQU (1 << 2) ; SW3_6: ON = 133MHz, OFF = 66MHz
BSP_PBC_DSW_ARM_CLK EQU (1 << 3) ; SW3_5: ON = 532MHz, OFF = 266MHz
BSP_PBC_DSW_ALT_CLK EQU (1 << 4) ; SW3_4: ON = SW3[5:6] determine clocking
; OFF = Force alternalte clocking
BSP_PBC_DSW_CLK_MSK EQU (BSP_PBC_DSW_AHB_CLK | BSP_PBC_DSW_ARM_CLK)
BSP_PBC_DSW_AHB_133 EQU (0 << 2)
BSP_PBC_DSW_AHB_66 EQU (1 << 2)
BSP_PBC_DSW_CLK_532_133 EQU (0 << 2)
BSP_PBC_DSW_CLK_532_66 EQU (1 << 2)
BSP_PBC_DSW_CLK_266_133 EQU (2 << 2)
BSP_PBC_DSW_CLK_266_66 EQU (3 << 2)
;
;
;
RamPABase EQU CSP_BASE_MEM_PA_CSD0
IPLRelocateSrc EQU CSP_BASE_REG_PA_NANDFC
IPLRelocateDst EQU (RamPABase+0x00008000)
IPLRelocateSize EQU 2048
IPLStackEnd EQU (RamPABase+0x0003C000-4)
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -