📄 ha_int_ac97.s
字号:
;**************************************************************
;//file name :HA_int_gpt.s
;//description:
;//modify history
;
;**************************************************************
;**************************************************************
;* the int_handler_entrance
;*
;* restore the reg used in the irq modle
;* chang the modle to the sys modle
;*
;* save the spsr and lr to the sys sp
;* __________________________________________one layer
;* save the reg used in the int_handler ;useless
;* ent int
;* open the irq
;* jump to the int_handler
;* close irq
;* jump to the end_int
;* ENTTRANCE OF INT HANDLER
;**************************************************************
AREA INT_GPT, CODE, READONLY
ENTRY ; Mark first instruction to execute
include hardware_gfd.h
ENT_INT_DMA
EXPORT ENT_INT_DMA
IMPORT LR_IRQ
IMPORT SPSR_IRQ
LDR RTA, =LR_IRQ ;load the LR
LDR RTA, [RTA]
sub RTA,RTA,#4
stmfd sp!, {RTA} ;save the LR_IRQ-4 TO the SP_SYS
LDR RTA, =SPSR_IRQ
LDR RTA, [RTA]
stmfd sp!, {RTA} ;save the SPSR_IRQ to the SP_SYS ;stmfd sp!, {spsr, lr}
ldr RTA, =INTC_PLV ;read the plv and store in the stack
ldr RTA, [RTA]
stmfd sp!, {RTA} ;save the PLV to the SVC stack
ldr RTA, =INTC_PLV ;set the plv
mov RTB, #5
str RTB, [RTA]
;jump to the int_handler
IMPORT ac97_handler
bl ac97_handler
mrs RTA, cpsr ;close the IRQ
orr RTA, RTA, #0X80
msr cpsr_c, RTA
IMPORT END_INT
b END_INT
;=========================================END OF ENT_INT_RTC
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -