📄 irq_wd.paf.arm
字号:
#line 1
#line 2
#line 3
#line 4
#line 5
#line 6
#line 7
#line 8
#line 9
#line 10
#line 11
#line 12
#line 13
#line 14
#line 15
#line 16
#line 17
;.section ".AT91Lib","ax"
;.AT91Lib
#line 18
#line 18
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#define AIC_PRIOR 0x07
#line 19
#line 19
#define AIC_SRCTYPE 0x60
#line 19
#define AIC_SRCTYPE_INT_LEVEL_SENSITIVE 0x00
#line 19
#define AIC_SRCTYPE_INT_EDGE_TRIGGERED 0x20
#line 19
#define AIC_SRCTYPE_EXT_LOW_LEVEL 0x00
#line 19
#define AIC_SRCTYPE_EXT_NEGATIVE_EDGE 0x20
#line 19
#define AIC_SRCTYPE_EXT_HIGH_LEVEL 0x40
#line 19
#define AIC_SRCTYPE_EXT_POSITIVE_EDGE 0x60
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#define AIC_IRQID 0x1F
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#define AIC_NFIQ 0x01
#line 19
#define AIC_NIRQ 0x02
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#define AIC_BASE 0xFFFFF000
#line 19
#line 19
/*END*/
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#define ARM_MODE_USER 0x10
#line 19
#define ARM_MODE_FIQ 0x11
#line 19
#define ARM_MODE_IRQ 0x12
#line 19
#define ARM_MODE_SVC 0x13
#line 19
#define ARM_MODE_ABORT 0x17
#line 19
#define ARM_MODE_UNDEF 0x1B
#line 19
#define ARM_MODE_SYS 0x1F
#line 19
#line 19
#define I_BIT 0x80
#line 19
#define F_BIT 0x40
#line 19
#define T_BIT 0x20
#line 19
#line 19
/*END*/
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
#line 19
/*END*/
#line 19
#line 19
#line 20
#line 20
#line 20
#line 20
#line 20
#line 20
#line 20
#line 20
#line 20
#line 20
#line 20
#line 20
#line 20
#line 20
#line 20
#line 20
#line 20
#line 20
#line 20
#line 20
#line 20
#line 20
#line 20
#line 20
#line 20
#line 20
#line 20
#line 20
#line 20
#line 20
#line 20
#line 20
#define WD_WDEN 0x01
#line 20
#define WD_RSTEN 0x02
#line 20
#define WD_IRQEN 0x04
#line 20
#define WD_EXTEN 0x08
#line 20
#define WD_OKEY 0x2340
#line 20
#line 20
#line 20
#line 20
#line 20
#line 20
#define WD_WDCLKS 0x03
#line 20
#define WD_WDCLKS_MCK8 0x0
#line 20
#define WD_WDCLKS_MCK32 0x1
#line 20
#define WD_WDCLKS_MCK128 0x2
#line 20
#define WD_WDCLKS_MCK1024 0x3
#line 20
#line 20
#define WD_HPCV (0x0F << 2)
#line 20
#line 20
#define WD_CKEY (0x06E << 7)
#line 20
#line 20
#line 20
#line 20
#line 20
#line 20
#define WD_RSTKEY 0xC071
#line 20
#line 20
#line 20
#line 20
#line 20
#line 20
#define WD_WDOVF 0x1
#line 20
#line 20
#line 20
#line 20
#line 20
#line 20
#line 20
#define WD_TMRKEY 0xD64A0000
#line 20
#define WD_TESTEN 0x2
#line 20
#line 20
#line 20
/*END*/
#line 20
#line 20
#line 21
#line 21
#line 22
IMPORT SaveWDHandler
#line 23
IMPORT WD_BASE
#line 24
#line 25
PtWDBase
#line 26
.word WD_BASE
#line 27
#line 28
#line 29
#line 30
#line 31
#line 32
#line 33
#line 34
#line 35
#line 36
#line 37
#line 38
EXPORT at91_watch_dog_interrupt_handler
#line 39
#line 40
at91_watch_dog_interrupt_handler
#line 41
#line 42
#line 43
#line 43
#line 43
#line 43
#line 43
#line 43
#line 43
#line 43
#line 43
sub r14, r14, 4
#line 43
#line 43
#line 43
stmfd sp!, {r14}
#line 43
#line 43
#line 43
#line 43
#line 43
#line 43
#line 43
#line 43
#line 43
#line 43
#line 43
#line 43
#line 43
#line 43
#line 43
ldr r14, =AIC_BASE
#line 43
#line 43
#line 43
str r14, [r14, 0x100]
#line 43
#line 43
#line 43
#line 43
#line 43
#line 43
#line 43
#line 43
#line 43
mrs r14, SPSR
#line 43
#line 43
#line 43
stmfd sp!, {r0, r14}
#line 43
#line 43
#line 43
#line 43
#line 43
#line 43
#line 43
#line 43
#line 43
mrs r0, CPSR
#line 43
#line 43
#line 43
bic r0, r0, I_BIT
#line 43
#line 43
#line 43
orr r0, r0, ARM_MODE_SYS
#line 43
#line 43
#line 43
msr CPSR_c, r0
#line 43
#line 43
#line 43
#line 43
#line 43
#line 43
#line 43
#line 43
#line 43
#if 1; "" == ""
#line 43
#line 43
#line 43
stmfd sp!, { r1-r3, r12, r14}
#line 43
#line 43
#line 43
#else
#line 43
#line 43
#line 43
stmfd sp!, { r1-r3, , r12, r14}
#line 43
#line 43
#line 43
#endif
#line 43
#line 43
#line 43
#line 43
#line 43
#line 43
#line 44
#line 45
#line 46
ldr r0, PtWDBase
#line 47
#line 48
#line 49
ldr r1, =SaveWDHandler
#line 50
ldr r1, [r1]
#line 51
mov r14, pc
#line 52
bx r1
#line 53
#line 54
#line 55
#line 55
#line 55
#line 55
#line 55
#line 55
#line 55
#line 55
#line 55
#if 1; "" == ""
#line 55
#line 55
#line 55
ldmia sp!, { r1-r3, r12, r14}
#line 55
#line 55
#line 55
#else
#line 55
#line 55
#line 55
ldmia sp!, { r1-r3, , r12, r14}
#line 55
#line 55
#line 55
#endif
#line 55
#line 55
#line 55
#line 55
#line 55
#line 55
#line 55
#line 55
#line 55
mrs r0, CPSR
#line 55
#line 55
#line 55
bic r0, r0, ARM_MODE_SYS
#line 55
#line 55
#line 55
orr r0, r0, I_BIT | ARM_MODE_IRQ
#line 55
#line 55
#line 55
msr CPSR_c, r0
#line 55
#line 55
#line 55
#line 55
#line 55
#line 55
#line 55
#line 55
#line 55
ldr r0, =AIC_BASE
#line 55
#line 55
#line 55
str r0, [r0, 0x130]
#line 55
#line 55
#line 55
#line 55
#line 55
#line 55
#line 55
#line 55
#line 55
ldmia sp!, {r0, r14}
#line 55
#line 55
#line 55
msr SPSR_cxsf, r14
#line 55
#line 55
#line 55
#line 55
#line 55
#line 55
#line 55
#line 55
#line 55
ldmia sp!, {pc}^
#line 55
#line 55
#line 55
#line 55
#line 55
#line 55
#line 56
#line 57
/*END*/
#line 58
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -