📄 int.s
字号:
.word INT_Interrupt_Shell ; Vector 21
.word INT_Interrupt_Shell ; Vector 22
.word INT_Interrupt_Shell ; Vector 23
.word INT_Interrupt_Shell ; Vector 24
.word INT_Interrupt_Shell ; Vector 25
.word INT_Interrupt_Shell ; Vector 26
.word INT_Interrupt_Shell ; Vector 27
.word INT_Interrupt_Shell ; Vector 28
.word INT_Interrupt_Shell ; Vector 29
.word INT_Timer_Interrupt ; Vector 30
.word INT_Interrupt_Shell ; Vector 31
.word INT_Interrupt_Shell_2 ; Vector 32
.word INT_Interrupt_Shell_2 ; Vector 33
.word INT_Interrupt_Shell_2 ; Vector 34
.word INT_Interrupt_Shell_2 ; Vector 35
.word INT_Interrupt_Shell_2 ; Vector 36
.word INT_Interrupt_Shell_2 ; Vector 37
.word INT_Interrupt_Shell_2 ; Vector 38
.word INT_Interrupt_Shell_2 ; Vector 39
.word INT_Interrupt_Shell_2 ; Vector 40
.word INT_Interrupt_Shell_2 ; Vector 41
.word INT_Interrupt_Shell_2 ; Vector 42
.word INT_Interrupt_Shell_2 ; Vector 43
.word INT_Interrupt_Shell_2 ; Vector 44
.word INT_Interrupt_Shell_2 ; Vector 45
.word INT_Interrupt_Shell_2 ; Vector 46
.word INT_Interrupt_Shell_2 ; Vector 47
.word INT_Interrupt_Shell_2 ; Vector 48
.word INT_Interrupt_Shell_2 ; Vector 49
.word INT_Interrupt_Shell_2 ; Vector 50
.word INT_Interrupt_Shell_2 ; Vector 51
.word INT_Interrupt_Shell_2 ; Vector 52
.word INT_Interrupt_Shell_2 ; Vector 53
.word INT_Interrupt_Shell_2 ; Vector 54
.word INT_Interrupt_Shell_2 ; Vector 55
.word INT_Interrupt_Shell_2 ; Vector 56
.word INT_Interrupt_Shell_2 ; Vector 57
.word INT_Interrupt_Shell_2 ; Vector 58
.word INT_Interrupt_Shell_2 ; Vector 59
.word INT_Interrupt_Shell_2 ; Vector 60
.word INT_Interrupt_Shell_2 ; Vector 61
.word INT_Interrupt_Shell_2 ; Vector 62
.word INT_Interrupt_Shell_2 ; Vector 63
; Define the order in which the interrupts will be executed by software(INT_IRQ)
; Level 1 Interrupt Handler
INT_IRQ_Priority:
.word INT_IRQ31_LCD_CTRL
.word INT_IRQ30_TIMER2
.word INT_IRQ29_LOC_BUS_IF
.word INT_IRQ28_BRDG_PBC
.word INT_IRQ27_WD_TIMER
.word INT_IRQ26_TIMER1
.word INT_IRQ25_CH_LCD
.word INT_IRQ24_CH5
.word INT_IRQ23_CH4
.word INT_IRQ22_CH3
.word INT_IRQ21_CH2_CH8
.word INT_IRQ20_CH1_CH7
.word INT_IRQ19_CH0_CH6
.word INT_IRQ18_RESERVED
.word INT_IRQ17_LB_MMU
.word INT_IRQ16_TIMER3
.word INT_IRQ15_UART3
.word INT_IRQ14_GPIO
.word INT_IRQ13_BRDG_PVT
.word INT_IRQ12_RESERVED
.word INT_IRQ11_DSP_MLBX2
.word INT_IRQ10_DSP_MLBX1
.word INT_IRQ9_ABORT
.word INT_IRQ8_HOST_INT
.word INT_IRQ7_DSP_MMU_ABORT
.word INT_IRQ6_RTDX
.word INT_IRQ5_McBSP2_RX
.word INT_IRQ4_McBSP2_TX
.word INT_IRQ3_EXT_FIQ
.word INT_IRQ2_RESERVED
.word INT_IRQ1_Camera
.word INT_IRQ0_LEVEL2
INT_Priority_End
; Define the order in which the interrupts will be executed by software(INT_IRQ)
; Level 2 Interrupt Handler
INT_IRQ_Priority_2:
.word INT_IRQ63_McBSP2_RX_OVER
.word INT_IRQ62_USB_NON_ISO
.word INT_IRQ61_USB_ISO
.word INT_IRQ60_DSP_MMU
.word INT_IRQ59_RESERVED
.word INT_IRQ58_RTC_ALARM
.word INT_IRQ57_RTC_TIMER
.word INT_IRQ56_ULPD
.word INT_IRQ55_MMC
.word INT_IRQ54_32K_TIMER
.word INT_IRQ53_1_WIRE
.word INT_IRQ52_USB_FUN_GEN
.word INT_IRQ51_RESERVED
.word INT_IRQ50_RESERVED
.word INT_IRQ49_MCSI2_FE
.word INT_IRQ48_MCSI1_FE
.word INT_IRQ47_UART2
.word INT_IRQ46_UART1
.word INT_IRQ45_McBSP1_RX
.word INT_IRQ44_McBSP1_TX
.word INT_IRQ43_McBSP3_RX
.word INT_IRQ42_McBSP3_TX
.word INT_IRQ41_RESERVED
.word INT_IRQ40_RESERVED
.word INT_IRQ39_USB_HHC_2
.word INT_IRQ38_USB_HHC_1
.word INT_IRQ37_MPUIO
.word INT_IRQ36_I2C
.word INT_IRQ35_MICROWARE_RX
.word INT_IRQ34_MICROWARE_TX
.word INT_IRQ33_KEYPAD
.word INT_IRQ32_FAC
INT_Priority_End_2
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;; merging from intvecs_16.asm ;;;;;;;;;;;;;;;;
LOCKOUT .equ 0xC0 ; Interrupt lockout value
IRQ_MASK .equ 0x80 ; IRQ mask value
FIQ_MASK .equ 0x40 ; FIQ mask value
FIQ_IRQ_MASK .equ 0xC0 ; FIQ_IRQ mask value
MODE_MASK .equ 0x1F ; Processor Mode Mask
FIQ_MODE .equ 0x11 ; Fast Interrupt Mode (FIQ)
IRQ_MODE .equ 0x12 ; Interrupt Mode (IRQ)
SUP_MODE .equ 0x13 ; Supervisor Mode
USR_MODE .equ 0x10 ; User Mode
ABORT_MODE .equ 0x17 ; Abort Mode
SYS_MODE .equ 0x1F ; System mode
UDEF_MODE .equ 0x1B ; Undefined mode
CLEAR_BIT .equ 0x00 ; Clear Bit
SET_BIT .equ 0x01 ; Set Bit
RESTORE_BIT .equ 0x02 ; Restore the CPSR with the value passed as first argument.
;;;;;;;;;;;;;;;;;;;;;; end of merging ;;;;;;;; ;;;;;;;;;;;;;;;;
;**********************************
;* LOCAL VARIABLE DECLARATIONS *
;**********************************
.text
; Define various data structure pointers so their addresses can be obtained
; in a PC-relative manner.
c_cinit
.word cinit
BSS_Start
.word _ld_bss_start
BSS_End
.word _ld_bss_end
Loaded_Flag
.word INT_Loaded_Flag
HISR_Stack_Ptr
.word _TMD_HISR_Stack_Ptr
HISR_Stack_Size
.word _TMD_HISR_Stack_Size
HISR_Priority
.word _TMD_HISR_Priority
System_Stack
.word _TCD_System_Stack
System_Limit
.word _TCT_System_Limit
INC_Initialize
.word _INC_Initialize
INT_ADDR
.word INTERRUPTS_ADDR
INT_Vectors_Addr
.word INT_Vectors
System_Stk_Limit
.word INT_System_Stk_Limit
System_Stack_SP
.word INT_System_Stack_SP
IRQ_Stack_SP
.word INT_IRQ_Stack_SP
FIQ_Stack_SP
.word INT_FIQ_Stack_SP
HISR_Stack_Mem
.word INT_HISR_Stack_Mem
First_Avail_Mem
.word INT_First_Avail_Mem
IRQ_Vectors
.word INT_IRQ_Vectors
IRQ_Priority
.word INT_IRQ_Priority
Priority_End
.word INT_Priority_End
IRQ_Priority_2
.word INT_IRQ_Priority_2
Priority_End_2
.word INT_Priority_End_2
;************************************************************************
;*
;* FUNCTION
;*
;* INT_Initialize
;*
;* DESCRIPTION
;*
;* This function sets up the global system stack variable and
;* transfers control to the target independent initialization
;* function INC_Initialize. Responsibilities of this function
;* include the following:
;*
;* - Setup necessary processor/system control registers
;* - Initialize the vector table
;* - Setup the system stack pointers
;* - Setup the timer interrupt
;* - Calculate the timer HISR stack and priority
;* - Calculate the first available memory address
;* - Transfer control to INC_Initialize to initialize all of
;* the system components.
;*
;* Major Revision:
;*
;* M. Kyle Craig, Accelerated Technology, Inc.
;*
;*
;*
;*
;* CALLED BY
;*
;* Nothing. This function is the ENTRY point for Nucleus PLUS.
;*
;* CALLS
;*
;* INC_Initialize Common initialization
;*
;* INPUTS
;*
;* None
;*
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -