亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? startup.s.svn-base

?? 這是三星的2443的wince的bootloader
?? SVN-BASE
?? 第 1 頁 / 共 2 頁
字號:
;
;  Copyright (c) Microsoft Corporation.  All rights reserved.
;
;
;  Use of this source code is subject to the terms of the Microsoft end-user
;  license agreement (EULA) under which you licensed this SOFTWARE PRODUCT.
;  If you did not accept the terms of the EULA, you are not authorized to use
;  this source code. For a copy of the EULA, please see the LICENSE.RTF on your
;  install media.
;
;------------------------------------------------------------------------------
;
;   File:  startup.s
;
;   Kernel startup routine for Samsung SMDK2443 board. Hardware is
;   initialized in boot loader - so there isn't much code at all.
;
;------------------------------------------------------------------------------

        INCLUDE kxarm.h
		INCLUDE s3c2443.inc

		IMPORT  OALClearUTLB
		IMPORT  OALFlushICache
		IMPORT  OALFlushDCache

; Data Cache Characteristics.
;
DCACHE_LINES_PER_SET_BITS       EQU     6
DCACHE_LINES_PER_SET            EQU     64
DCACHE_NUM_SETS                 EQU     8
DCACHE_SET_INDEX_BIT            EQU     (32 - DCACHE_LINES_PER_SET_BITS)
DCACHE_LINE_SIZE                EQU     32



SLEEPDATA_BASE_VIRTUAL          EQU	0xA0028000		; keep in sync w/ config.bib
SLEEPDATA_BASE_PHYSICAL         EQU	0x30028000

SleepState_Data_Start		EQU     (0)

SleepState_WakeAddr    		EQU     (SleepState_Data_Start		    )
SleepState_MMUCTL               EQU     (SleepState_WakeAddr    + WORD_SIZE )
SleepState_MMUTTB       	EQU     (SleepState_MMUCTL  	+ WORD_SIZE )
SleepState_MMUDOMAIN    	EQU     (SleepState_MMUTTB  	+ WORD_SIZE )
SleepState_SVC_SP       	EQU     (SleepState_MMUDOMAIN   + WORD_SIZE )
SleepState_SVC_SPSR     	EQU     (SleepState_SVC_SP  	+ WORD_SIZE )
SleepState_FIQ_SPSR     	EQU     (SleepState_SVC_SPSR    + WORD_SIZE )
SleepState_FIQ_R8       	EQU     (SleepState_FIQ_SPSR    + WORD_SIZE )
SleepState_FIQ_R9       	EQU     (SleepState_FIQ_R8  	+ WORD_SIZE )
SleepState_FIQ_R10      	EQU     (SleepState_FIQ_R9  	+ WORD_SIZE )
SleepState_FIQ_R11      	EQU     (SleepState_FIQ_R10 	+ WORD_SIZE )
SleepState_FIQ_R12      	EQU     (SleepState_FIQ_R11 	+ WORD_SIZE )
SleepState_FIQ_SP       	EQU     (SleepState_FIQ_R12 	+ WORD_SIZE )
SleepState_FIQ_LR       	EQU     (SleepState_FIQ_SP  	+ WORD_SIZE )
SleepState_ABT_SPSR     	EQU     (SleepState_FIQ_LR  	+ WORD_SIZE )
SleepState_ABT_SP       	EQU     (SleepState_ABT_SPSR    + WORD_SIZE )
SleepState_ABT_LR       	EQU     (SleepState_ABT_SP  	+ WORD_SIZE )
SleepState_IRQ_SPSR     	EQU     (SleepState_ABT_LR  	+ WORD_SIZE )
SleepState_IRQ_SP       	EQU     (SleepState_IRQ_SPSR    + WORD_SIZE )
SleepState_IRQ_LR       	EQU     (SleepState_IRQ_SP  	+ WORD_SIZE )
SleepState_UND_SPSR     	EQU     (SleepState_IRQ_LR  	+ WORD_SIZE )
SleepState_UND_SP       	EQU     (SleepState_UND_SPSR    + WORD_SIZE )
SleepState_UND_LR       	EQU     (SleepState_UND_SP  	+ WORD_SIZE )
SleepState_SYS_SP       	EQU     (SleepState_UND_LR  	+ WORD_SIZE )
SleepState_SYS_LR       	EQU     (SleepState_SYS_SP  	+ WORD_SIZE )

SleepState_Data_End     	EQU     (SleepState_SYS_LR	+ WORD_SIZE )

SLEEPDATA_SIZE		    	EQU     ((SleepState_Data_End - SleepState_Data_Start) / 4)


;---------------------------------------------------------------------------
;
; Macro to feed the LED Reg (The GPIO) with the value desired for debugging.
; Uses physical address
;
; GPFDAT [7:4] is assigned to LEDs.

	MACRO
	LED_ON	$data

	LDR	r10, =GPFUDP
	LDR     r11, =0x5500	;Pull-Up-Down Disable
	STR	r11, [r10]
	
	LDR	r10, = GPFCON
	LDR	r11, = (0x5500)	; GPF[7:4] Output .
	STR	r11, [r10]
	LDR	r10, =GPFDAT
	LDR	r11, =$data
	MOV     r11, r11, lsl #4	; [7:4]
  	STR	r11, [r10]
  	MEND


; LED_ON using virtual address
;
	MACRO
	VLED_ON	$data
	
	LDR	r10, = vGPFUDP
	LDR     r11, =0x5500	;Pull-Up-Down Disable
	STR	r11, [r10]
	
	LDR	r10, = vGPFCON
	LDR	r11, = (0x5500)	; GPF[7:4] Output .
	STR	r11, [r10]
	LDR	r10, =vGPFDAT
	LDR	r11, =$data
	MOV     r11, r11, lsl #4	; [7:4]
  	STR	r11, [r10]
    	MEND
   
;---------------------------------------------------------------------------

;	IMPORT  Max1718_Init
;	IMPORT  Max1718_Set
        IMPORT  KernelStart

        TEXTAREA
        
        ; Include memory configuration file with g_oalAddressTable
 
        LEAF_ENTRY StartUp

        ; Compute the OEMAddressTable's physical address and 
        ; load it into r0. KernelStart expects r0 to contain
        ; the physical address of this table. The MMU isn't 
        ; turned on until well into KernelStart.  

	; Jump over power-off code. 
1	b		ResetHandler
	b %B1		;HandlerUndef	;handler for Undefined mode
	b %B1		;HandlerSWI		;handler for SWI interrupt
	b %B1		;HandlerPabort	;handler for PAbort
	b %B1		;HandlerDabort	;handler for DAbort
	b %B1		;				;reserved
	b %B1		;HandlerIRQ		;handler for IRQ interrupt 
	b %B1		;HandlerFIQ		;handler for FIQ interrupt

ResetHandler
		
    ldr	r0, =WTCON       ; disable the watchdog timer.
    mov	r1,#0         
    str	r1, [r0]

	;;;;;;;;;;;; set voltage test
	;bl		Max1718_Init
	;mov		r0, #0x1
	;mov		r1, #120
	;mov		r1, #125
	;mov		r1, #130
	;mov		r1, #135
	;bl		Max1718_Set

;    ldr	r0, =EBICON		; EBI
;    ldr	r1, =EBICON_VAL			; Refer s3c2443.inc
;    str	r1,[r0]

    ldr r0, = GPFCON
    ldr r1, = 0x5500      
    str r1, [r0]

    ldr	r0, =INTMSK      ; mask all first-level interrupts.
    ldr	r1, =0xffffffff
    str	r1, [r0]

    ldr	r0, =INTSUBMSK   ; mask all second-level interrupts.
    ldr	r1, =0x1fffffff
    str	r1, [r0]

    ldr r0, = INTMOD
    mov r1, #0x0			; set all interrupt as IRQ
    str r1, [r0]

    LED_ON	0x2

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; When the Eboot is already, No need to set again.
;; IF set as "FALSE", The FCLK,HCLK,PCLK Clock will detect automatically in OS.
;; IF set as "TRUE", The FCLK,HCLK,PCLK Clock and Memory setting will be set again here and detect automatically in OS.

 	[ CHANGE_CLK_OAL=1	; Refer the S3c2443.inc.



 LED_ON	0x3

	ldr		r0,=CLKDIV0			;	Set Clock Divider
	ldr		r1,[r0]
	bic		r1,r1,#0x37		; clear HCLKDIV, PREDIV, PCLKDIV
	bic		r1,r1,#(0xf<<9) ; clear ARMCLKDIV
	ldr		r2,=((Startup_ARMCLKdiv<<9)+(Startup_PREdiv<<4)+(Startup_PCLKdiv<<2)+(Startup_HCLKdiv)) 
	orr		r1,r1,r2
	str		r1,[r0]			

 LED_ON	0x4

	ldr		r0,=LOCKCON0		;	Set lock time of MPLL. added by junon
	mov		r1,#0xe10			;	Fin = 12MHz - 0x800, 16.9844MHz - 0xA00
	str		r1,[r0]	

	ldr		r0,=LOCKCON1		;	Set lock time of EPLL. added by junon
	mov		r1,#0x800			;	Fin = 12MHz - 0x800, 16.9844MHz - 0xA00
	str		r1,[r0]	

	ldr		r0,=MPLLCON			;	Set MPLL
	ldr		r1,=((0<<24)+(Startup_Mdiv<<16)+(Startup_Pdiv<<8)+(Startup_Sdiv))
	str		r1,[r0]			

  	ldr		r0,=EPLLCON			;	Set EPLL
	ldr		r1,=((0<<24)+(Startup_EMdiv<<16)+(Startup_EPdiv<<8)+(Startup_ESdiv))
	str		r1,[r0]			
		
	
 LED_ON	0x5
	ldr		r0,=CLKSRC			;	Select MPLL clock out for SYSCLK
	ldr		r1,[r0]
	orr		r1,r1,#0x50
	str		r1,[r0]	

    ;bl		MMU_SetAsyncBusMode

 LED_ON	0x7

	bl		InitSSMC				
	]	; End of PLL setting
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

	[ DVSON = 1
	
;		bl	DVS_ON
;	ldr		r0,=CLKDIV0			;	Set DVS
;	ldr		r1,[r0]
;	orr		r1,r1,#0x2000
;	str		r1,[r0]	
	
	]
	
    bl		MMU_SetAsyncBusMode	
		
; :::::::::::::::::::::::::::::::::::::::::::::
;           Add for Power Management 
; - - - - - - - - - - - - - - - - - - - - - - -
	[ {TRUE}
	ldr		r1, =RSTSTAT           ; Determine Booting Mode
	ldr		r0, [r1]
	tst		r0, #0x8				; Power-Off reset Check
	beq		%f4

	ldr 	r5, =SLEEPDATA_BASE_PHYSICAL	; pointer to physical address of reserved Sleep mode info data structure 
	mov		r3, r5					; pointer for checksum calculation
	mov		r2, #0
	ldr		r0, =SLEEPDATA_SIZE		; get size of data structure to do checksum on
40
	ldr		r1, [r3], #4			; pointer to SLEEPDATA
	and		r1, r1, #0x1
	mov		r1, r1, LSL #31
	orr		r1, r1, r1, LSR #1
	add		r2, r2, r1
	subs	r0, r0, #1				; dec the count
	bne		%b40			        ; loop till done	

	ldr		r0,=INFORM3
	ldr		r3, [r0]				; get the Sleep data checksum from the Power Manager Scratch pad register
	teq		r2, r3			        ; compare to what we saved before going to sleep
	bne		JumpToRAM				; bad news - do a cold boot - If emergency power off case, normal booting.
	b		MMUENABLE
	
JumpToRAM
	ldr		r2, =0x200000 ;=0x201000					; offset into the RAM 
	ldr		r3, =0x30000000					; add physical base
	add		r2, r2, r3
	mov     pc, r2							;  & jump to StartUp address
	
MMUENABLE
;  2. MMU Enable

	ldr     r10, [r5, #SleepState_MMUDOMAIN]	; load the MMU domain access info
	ldr     r9,  [r5, #SleepState_MMUTTB]		; load the MMU TTB info	
	ldr     r8,  [r5, #SleepState_MMUCTL]		; load the MMU control info	
	ldr     r7,  [r5, #SleepState_WakeAddr]		; load the LR address
	nop			
	nop
	nop
	nop
	nop	
	
; wakeup routine
1
	mcr		p15, 0, r10, c3, c0, 0		; setup access to domain 0
	mcr		p15, 0, r9,  c2, c0, 0		; PT address
	mcr		p15, 0, r0,  c8, c7, 0	   	; flush I+D TLBs
	mcr		p15, 0, r8,  c1, c0, 0		; restore MMU control

;  3. Jump to Kernel Image's fw.s(Awake_address)
	mov     pc, r7						;  & jump to new virtual address (back up Power management stack)
	nop
	
	]
			
4		
;;;;;;;;;;;;;;;;;; set clkout1 - HCLK
	ldr		r0,=MISCCR
	ldr		r1,[r0]

	bic		r1,r1, #0x770
	orr		r1,r1,#0x320
	str		r1,[r0]
	
	ldr		r0,=GPHUDP
	ldr		r1,[r0]	
	bic		r1,r1, #0x3C000000
	orr		r1,r1, #0x14000000
	str		r1,[r0]	
		
	ldr		r0,=GPHCON
	ldr		r1,[r0]

	bic		r1,r1, #0x3C000000
	orr		r1,r1, #0x28000000
	str		r1,[r0]	
;;;;;;;;;;;;;;;;;;

;;;;;;;;;;;;;;;;;; PWR & CLK OFF FOR TEST
;	ldr 	r0,=HCLKCON
;	ldr		r1,=0xFFFFFFFF   ;0xFFFCE0FF   ;0xFFFCF6FF
;	str		r1,[r0]
;	ldr 	r0,=PCLKCON
;	ldr		r1,=0xFFFF3F82   ;0xFFFF3E02   ;0xFFFF3F82   
;	str		r1,[r0]
;	ldr 	r0,=SCLKCON
;	ldr		r1,=0xFFFF87FD   ;0xFFFE83FD   ;0xFFFF87FD  
;	str		r1,[r0]	
;;;;;;;;;;;;;;;;;;
; LED_ON	0x8
        
	add		r0, pc, #g_oalAddressTable - (. + 8)

	bl		KernelStart	; Call the WinCE kernel.

        LTORG

	INCLUDE oemaddrtab_cfg.inc

        ENTRY_END 



	LEAF_ENTRY OALCPUPowerOff
;       1. Push SVC state onto our stack
	stmdb   sp!, {r4-r12}                   
	stmdb   sp!, {lr}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久综合久色欧美综合狠狠| 色综合色狠狠综合色| 日韩欧美久久久| 秋霞av亚洲一区二区三| 欧美精品一区二| 91免费视频大全| 中文字幕人成不卡一区| 欧美自拍丝袜亚洲| 奇米精品一区二区三区在线观看一 | 成人高清av在线| 国产精品看片你懂得| 91国内精品野花午夜精品| 亚洲成人av资源| 精品国产制服丝袜高跟| a在线播放不卡| 亚洲1区2区3区视频| 精品国产网站在线观看| 99久久久精品| 日欧美一区二区| 欧美国产日本视频| 欧美午夜片在线观看| 国内精品久久久久影院色 | 日韩欧美三级在线| 不卡在线观看av| 午夜日韩在线电影| 久久尤物电影视频在线观看| 色伊人久久综合中文字幕| 日本aⅴ精品一区二区三区| 国产欧美一区二区精品忘忧草| 色妹子一区二区| 蜜臀av性久久久久蜜臀aⅴ四虎 | 91免费版在线| 欧美96一区二区免费视频| 国产农村妇女毛片精品久久麻豆| 欧美日韩一区不卡| 粉嫩aⅴ一区二区三区四区五区| 亚洲国产精品自拍| 欧美国产综合色视频| 91精品国产入口在线| 96av麻豆蜜桃一区二区| 麻豆精品一区二区| 一区二区三区四区中文字幕| 国产亚洲精品精华液| 欧美色网一区二区| 99在线精品一区二区三区| 美女网站在线免费欧美精品| 亚洲日本va午夜在线电影| 日韩一区二区三区电影 | 一区二区免费看| 久久精品一二三| 日韩免费一区二区| 在线观看免费成人| 99国产精品久久久久久久久久久| 精品中文字幕一区二区| 天天操天天干天天综合网| 亚洲情趣在线观看| 欧美国产日韩亚洲一区| 久久婷婷成人综合色| 欧美一区二区播放| 欧美精品亚洲二区| 欧美日韩一区三区| 色视频欧美一区二区三区| 成人黄动漫网站免费app| 国产一区日韩二区欧美三区| 蜜臀精品久久久久久蜜臀| 亚洲国产成人高清精品| 亚洲欧美韩国综合色| 最新中文字幕一区二区三区 | 日韩综合小视频| 日韩国产欧美视频| 五月婷婷激情综合网| 亚洲午夜在线电影| 亚洲国产欧美在线| 香蕉久久一区二区不卡无毒影院| 一区二区三区 在线观看视频| 一区二区三区四区在线免费观看 | 国产精品亚洲成人| 国产精品99久| 成人免费视频app| 成人午夜视频福利| 99久久精品一区| 色哟哟一区二区在线观看 | 日本少妇一区二区| 久久精品国产秦先生| 卡一卡二国产精品| 国产精品一区二区视频| 成人午夜视频在线| 色哟哟国产精品| 欧美精品一卡两卡| 日韩欧美高清在线| 久久精品在线免费观看| 国产精品久久久久久久久免费丝袜| 国产精品国产精品国产专区不片| 亚洲视频在线一区观看| 亚洲国产精品久久人人爱蜜臀| 日韩国产欧美在线观看| 国产在线精品一区二区不卡了| 国产精品 欧美精品| 91在线云播放| 91精品国产色综合久久ai换脸| 精品成人佐山爱一区二区| 中文av一区特黄| 亚洲成人资源网| 韩国视频一区二区| 91色视频在线| 欧美一区二区三区色| 久久综合成人精品亚洲另类欧美 | www.av精品| 欧美无砖砖区免费| 日韩欧美高清一区| 国产精品不卡在线| 日韩精彩视频在线观看| 国产精品影视在线观看| 色哟哟日韩精品| 日韩精品一区二| 亚洲裸体在线观看| 久久99久久精品欧美| 99在线精品观看| 欧美岛国在线观看| 亚洲欧美日韩国产一区二区三区| 人妖欧美一区二区| 色综合久久天天| 久久伊人中文字幕| 性久久久久久久| 波多野结衣在线一区| 日韩欧美一级精品久久| 亚洲情趣在线观看| 国产精品一区一区三区| 制服.丝袜.亚洲.另类.中文| 亚洲国产激情av| 美脚の诱脚舐め脚责91| 色狠狠一区二区| 国产亚洲成年网址在线观看| 日韩和欧美一区二区| 91丨porny丨国产| 国产欧美日韩综合| 美国精品在线观看| 欧美系列在线观看| 亚洲色图一区二区| 夜夜亚洲天天久久| 在线播放国产精品二区一二区四区| 亚洲欧美日韩在线不卡| 成人黄色片在线观看| 在线国产亚洲欧美| 日韩欧美国产电影| 日韩电影在线免费观看| 欧美视频第二页| 蜜桃免费网站一区二区三区| 中文字幕免费在线观看视频一区| 91蜜桃免费观看视频| 18成人在线视频| 国产精品五月天| 欧美日韩综合色| 韩国三级中文字幕hd久久精品| 欧美日韩国产另类一区| 亚洲免费在线视频| 国产福利一区二区三区视频在线| 欧美日韩一级视频| 亚洲h在线观看| 色综合久久天天| 国产白丝网站精品污在线入口| 久久国产欧美日韩精品| 狠狠色2019综合网| 亚洲国产视频网站| 最新高清无码专区| 91久久香蕉国产日韩欧美9色| 亚洲精品视频一区二区| 在线视频一区二区三区| 天天综合网 天天综合色| 久久综合资源网| 4438x成人网最大色成网站| 久久精品一区二区三区不卡 | 色8久久精品久久久久久蜜| 国产精品欧美经典| 成人av电影免费观看| 亚洲少妇30p| 欧美午夜精品一区二区三区 | 国产精品久久久久天堂| 成人午夜免费av| 亚洲日本电影在线| 欧美日韩精品欧美日韩精品一| 日韩在线一区二区三区| 日韩欧美久久久| 国产91在线观看丝袜| 亚洲黄色免费电影| 欧美日韩精品免费| 蜜臀av一区二区三区| 国产亚洲欧洲997久久综合| av在线不卡电影| 亚洲成人久久影院| 精品99999| 91蜜桃视频在线| 日本免费新一区视频| 国产偷国产偷亚洲高清人白洁| 97久久人人超碰| 蜜臀久久99精品久久久久久9| 欧美国产乱子伦 | 日韩一级欧美一级| 国产精品一级片在线观看| 亚洲激情第一区|