📄 init_ice.s
字号:
;init the mem map no the integrate board
include hardware_gfd.h
AREA INIT, CODE, READONLY
ENTRY ; Mark first instruction to execute
;set the bit ,enable the add mapped to the ssram
;LDR RTA, =0X1000000C
;LDR RTB, =0X00000004
;STR RTB, [RTA]
;LDR RTA, =0X11000010
;LDR RTB, =0X0000000b
;STR RTB, [RTA]
;ldr RTA, =0x0022000C ;THE ADD OF MC_CSGBAB
;ldr RTB, =0x00002800 ;have been modified bu willhua
;str RTB, [ RTA ]
;ldr RTA, =0x00220000 ;THE ADD OF MC_CSAB
;ldr RTB, =0x00000477
;str RTB, [ RTA ]
;init sp_svc
ldr sp, =SP_SVC
;chmod to irq and init sp_irq
mov RTA, #0xD2
msr cpsr_cf, RTA
ldr sp, =SP_IRQ
;chomod to fiq and init sp_fiq
mov RTA, #0XD1
msr cpsr_cf, RTA
ldr sp, =SP_FIQ
;chomod to abt and init sp_ABT
mov RTA, #0XD7
msr cpsr_cf, RTA
ldr sp, =SP_ABT
;chomod to undf and init sp_UNDF
mov RTA, #0XDB
msr cpsr_cf, RTA
ldr sp, =SP_UND
;CHMOD TO SYS AND INTI SP_SYS
mov RTA, #0xDF ;@all interrupts disabled,
msr cpsr_cxsf, RTA ; @SYSTEM mode, @32-bit code mode
ldr sp, =SP_SYS ;INIT SYS_SP
;chmod to svc modle
mov RTA, #0XD3
msr cpsr_c, RTA
;*****************************************************************
; config intc
;*****************************************************************
; ldr RTA, =INTC_EN ;disable all IRQ interrupts
;ldr RTB, =0X0
;str RTB, [RTA]
; ldr RTA, =INTC_EN_FIQ ;disable all FIQ interrupts
; ldr RTB, =0X0
; str RTB, [RTA] ;???THE INTC_EN_FIQ IS 4 BITS WIDTH?? DISABLE FIQ
; ldr RTA, =INTC_MSK ;mask all interrupts
; ldr RTB, =0XFFFFFFFF
; str RTB, [RTA]
; ldr RTA, =INTC_PLV ;set the hightest plevel
; ldr RTB, =15
; str RTB, [RTA]
;****************************************************************
; init the EMI and get the memory space
;****************************************************************
ldr RTA, =0x11000004 ;THE ADD OF EMI_CSGBAB
ldr RTB, =0x24002000
str RTB, [ RTA ]
ldr RTA, =0x11000008 ;THE ADD OF EMI_CSGBCD
ldr RTB, =0x2c002800
str RTB, [ RTA ]
ldr RTA, =0x1100000c ;THE ADD OF EMI_CSGBEF
ldr RTB, =0x34003000
str RTB, [ RTA ]
ldr RTA, =0x11000000 ;THE ADD OF EMIADDR_SMCONF
ldr RTB, =0x9b0133ff
str RTB, [ RTA ]
ldr RTA, =0x11000014 ;THE ADD OF EMIADDR_SMCONF1
ldr RTB, =0x0110a077
str RTB, [ RTA ]
ldr RTA, =0x11000018 ;THE ADD OF EMIADDR_SMCONF2
ldr RTB, =0x80000500
str RTB, [ RTA ]
ldr RTA, =0x11000010 ;REMAP 0 ADDRESS TO SDRAM
ldr RTB, =0x0b
str RTB, [ RTA ]
;***************************************************************
; enable CPSR IRQ bit
;***************************************************************
mrs RTA, cpsr
bic RTA, RTA, #0x80 ;set bit7 to zero
msr cpsr_c, RTA
IMPORT __main
B __main
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -