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

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

?? sysinit.s

?? S3C2410 NANDFLASH驅動原代碼.
?? S
字號:
	INCLUDE	option.inc
	INCLUDE	memcfg.inc
	INCLUDE	2410addr.inc
	
	INCLUDE	 vector.s
	
;	AREA    reset, CODE, READONLY
	
;	EXPORT	InitSystem
InitSystem
	
	ldr	r0,=WTCON       ;watch dog disable 
	ldr	r1,=0x0         
	str	r1,[r0]

	ldr	r0,=INTMSK
	ldr	r1,=0xffffffff  ;all interrupt disable
	str	r1,[r0]

	ldr	r0,=INTSUBMSK
	ldr	r1,=0x3ff		;all sub interrupt disable
	str	r1,[r0]
	
	;To reduce PLL lock time, adjust the LOCKTIME register. 
	ldr	r0,=LOCKTIME
	ldr	r1,=0xffffff
	str	r1,[r0]
	
	 [ PLL_ON_START
	;Configure MPLL
	ldr	r0,=MPLLCON
	ldr	r1,=((M_MDIV<<12)+(M_PDIV<<4)+M_SDIV)  ;Fin=12MHz,Fout=50MHz
	str	r1,[r0]
	]
	
	ldr	r0, =CLKCON
	ldr	r1, =0xffff0
	str	r1, [r0]		;使能所有功能單元塊時鐘,復位后缺省為全部使能

	;Check if the boot is caused by the wake-up from POWER_OFF mode.
;	ldr	r1,=GSTATUS2
;	ldr	r0,[r1]
;	tst	r0,#0x2
	;In case of the wake-up from POWER_OFF mode, go to POWER_OFF_WAKEUP handler. 
;	bne	WAKEUP_POWER_OFF

	adr	r0, SMRDATA	;can not use ldr r0, =xxxx important!!!
	ldr	r1, =BWSCON	;BWSCON Address
	add	r2, r0, #52	;End address of SMRDATA
0       					
	ldr	r3, [r0], #4    
	str	r3, [r1], #4    
	cmp	r2, r0		
	bne	%B0
	
	;ldr	r0, =IrqSvcVector	
	;ldr	r1, =IRQ_SERVICE		
	;str	r1, [r0]
	
	ldr	r0, =BWSCON
	ldr	r0, [r0]
	ands	r0, r0, #6		;OM[1:0] != 0, NOR FLash boot
	bne	InitSystem_exit		;do not read nand flash	
	adr	r0, __ENTRY			;OM[1:0] == 0, NAND FLash boot	
	cmp	r0, #0				;if use Multi-ice,
	bne	InitSystem_exit		;do not read nand flash for boot
	
	mov	r5, #NFCONF
	ldr	r0,	=(1<<15)|(1<<12)|(1<<11)|(7<<8)|(7<<4)|(7)
	str	r0,	[r5]
	
	bl	ReadNandID
	mov	r6, #0
	ldr	r0, =0xec73
	cmp	r5,	r0
	beq	%F1
	ldr	r0, =0xec75
	cmp	r5, r0
	beq	%F1
	mov	r6, #1
1	
	bl	ReadNandStatus	
	
	mov	r8, #0
	ldr	r9, =__ENTRY	
2	
	ands	r0, r8, #0x1f
	bne		%F3
	mov		r0, r8
	bl		CheckBadBlk
	cmp		r0, #0
	addne	r8, r8, #32
	bne		%F4
3	
	mov	r0, r8
	mov	r1, r9
	bl	ReadNandPage
	add	r9, r9, #512
	add	r8, r8, #1
4	
	cmp	r8, #256			;128K
	bcc	%B2
	
	mov	r5, #NFCONF			;DsNandFlash
	ldr	r0, [r5]
	and	r0, r0, #~0x8000
	str	r0, [r5]
	ldr	pc, =InitSystem_exit

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;	
	EXPORT	IRQ_SERVICE	
IRQ_SERVICE  
	sub	sp, sp, #4       ;reserved for PC
	stmfd	sp!, {r8-r9}
	
	ldr	r9, =INTOFFSET
	ldr	r9, [r9]
	ldr	r8, =HandleEINT0
	add	r8, r8,r9,lsl #2
	ldr	r8, [r8]
	str	r8, [sp,#8]
	ldmfd	sp!,{r8-r9,pc}
	
ReadNandID
	mov		 r7,#NFCONF	
	ldr      r0,[r7,#0]		;NFChipEn();
	bic      r0,r0,#0x800
	str      r0,[r7,#0]	
	mov      r0,#0x90		;WrNFCmd(RdIDCMD);
	strb     r0,[r7,#4]	
	mov      r4,#0			;WrNFAddr(0);
	strb     r4,[r7,#8]	
1							;while(NFIsBusy());
	ldr      r0,[r7,#0x10]	
	tst      r0,#1
	beq      %B1
	ldrb     r0,[r7,#0xc]	;id  = RdNFDat()<<8;
	mov      r0,r0,lsl #8	
	ldrb     r1,[r7,#0xc]	;id |= RdNFDat();
	orr      r5,r1,r0	
	ldr      r0,[r7,#0]		;NFChipDs();
	orr      r0,r0,#0x800
	str      r0,[r7,#0]	
	mov		 pc,lr	
	
ReadNandStatus
	mov		 r7,#NFCONF
	ldr      r0,[r7,#0]		;NFChipEn();
	bic      r0,r0,#0x800
	str      r0,[r7,#0]
	mov      r0,#0x70		;WrNFCmd(QUERYCMD);
	strb     r0,[r7,#4]	
	ldrb     r1,[r7,#0xc]	;r1 = RdNFDat();
	ldr      r0,[r7,#0]		;NFChipDs();
	orr      r0,r0,#0x800
	str      r0,[r7,#0]
	mov		 pc,lr

WaitNandBusy
	mov      r0,#0x70		;WrNFCmd(QUERYCMD);
	mov      r1,#NFCONF
	strb     r0,[r1,#4]
1							;while(!(RdNFDat()&0x40));	
	ldrb     r0,[r1,#0xc]
	tst      r0,#0x40
	beq		 %B1
	mov      r0,#0			;WrNFCmd(READCMD0);
	strb     r0,[r1,#4]
	mov      pc,lr

CheckBadBlk
	mov		r7, lr
	mov		r5, #NFCONF
	
	bic		r0, r0, #0x1f	;addr &= ~0x1f;
	ldr      r1,[r5,#0]		;NFChipEn()
	bic      r1,r1,#0x800
	str      r1,[r5,#0]	

	mov      r1,#0x50		;WrNFCmd(READCMD2)
	strb     r1,[r5,#4]	
	mov		 r1, #5
	strb     r1,[r5,#8]		;WrNFAddr(5)
	strb     r0,[r5,#8]		;WrNFAddr(addr)
	mov      r1,r0,lsr #8	;WrNFAddr(addr>>8)
	strb     r1,[r5,#8]	
	cmp      r6,#0			;if(NandAddr)		
	movne    r0,r0,lsr #16	;WrNFAddr(addr>>16)
	strneb   r0,[r5,#8]
	
	bl		WaitNandBusy	;WaitNFBusy()

	ldrb	r0, [r5,#0xc]	;RdNFDat()
	sub		r0, r0, #0xff
	
	mov      r1,#0			;WrNFCmd(READCMD0)
	strb     r1,[r5,#4]	
	
	ldr      r1,[r5,#0]		;NFChipDs()
	orr      r1,r1,#0x800
	str      r1,[r5,#0]
	
	mov		pc, r7

ReadNandPage
	mov		 r7,lr
	mov      r4,r1
	mov      r5,#NFCONF

	ldr      r1,[r5,#0]		;NFChipEn()
	bic      r1,r1,#0x800
	str      r1,[r5,#0]	

	mov      r1,#0			;WrNFCmd(READCMD0)
	strb     r1,[r5,#4]	
	strb     r1,[r5,#8]		;WrNFAddr(0)
	strb     r0,[r5,#8]		;WrNFAddr(addr)
	mov      r1,r0,lsr #8	;WrNFAddr(addr>>8)
	strb     r1,[r5,#8]	
	cmp      r6,#0			;if(NandAddr)		
	movne    r0,r0,lsr #16	;WrNFAddr(addr>>16)
	strneb   r0,[r5,#8]
	
	ldr      r0,[r5,#0]		;InitEcc()
	orr      r0,r0,#0x1000
	str      r0,[r5,#0]	
	
	bl       WaitNandBusy	;WaitNFBusy()
	
	mov      r0,#0			;for(i=0; i<512; i++)
1
	ldrb     r1,[r5,#0xc]	;buf[i] = RdNFDat()
	strb     r1,[r4,r0]
	add      r0,r0,#1
	bic      r0,r0,#0x10000
	cmp      r0,#0x200
	bcc      %B1
	
	ldr      r0,[r5,#0]		;NFChipDs()
	orr      r0,r0,#0x800
	str      r0,[r5,#0]
		
	mov		 pc,r7

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
	LTORG	
	
SMRDATA DATA
; Memory configuration should be optimized for best performance 
; The following parameter is not optimized.                     
; Memory access cycle parameter strategy
; 1) The memory settings is  safe parameters even at HCLK=75Mhz.
; 2) SDRAM refresh period is for HCLK=75Mhz. 

        DCD (0+(B1_BWSCON<<4)+(B2_BWSCON<<8)+(B3_BWSCON<<12)+(B4_BWSCON<<16)+(B5_BWSCON<<20)+(B6_BWSCON<<24)+(B7_BWSCON<<28))
    	DCD ((B0_Tacs<<13)+(B0_Tcos<<11)+(B0_Tacc<<8)+(B0_Tcoh<<6)+(B0_Tah<<4)+(B0_Tacp<<2)+(B0_PMC))   ;GCS0
    	DCD ((B1_Tacs<<13)+(B1_Tcos<<11)+(B1_Tacc<<8)+(B1_Tcoh<<6)+(B1_Tah<<4)+(B1_Tacp<<2)+(B1_PMC))   ;GCS1 
    	DCD ((B2_Tacs<<13)+(B2_Tcos<<11)+(B2_Tacc<<8)+(B2_Tcoh<<6)+(B2_Tah<<4)+(B2_Tacp<<2)+(B2_PMC))   ;GCS2
    	DCD ((B3_Tacs<<13)+(B3_Tcos<<11)+(B3_Tacc<<8)+(B3_Tcoh<<6)+(B3_Tah<<4)+(B3_Tacp<<2)+(B3_PMC))   ;GCS3
    	DCD ((B4_Tacs<<13)+(B4_Tcos<<11)+(B4_Tacc<<8)+(B4_Tcoh<<6)+(B4_Tah<<4)+(B4_Tacp<<2)+(B4_PMC))   ;GCS4
    	DCD ((B5_Tacs<<13)+(B5_Tcos<<11)+(B5_Tacc<<8)+(B5_Tcoh<<6)+(B5_Tah<<4)+(B5_Tacp<<2)+(B5_PMC))   ;GCS5
    	DCD ((B6_MT<<15)+(B6_Trcd<<2)+(B6_SCAN))    ;GCS6
    	DCD ((B7_Tacs<<13)+(B7_Tcos<<11)+(B7_Tacc<<8)+(B7_Tcoh<<6)+(B7_Tah<<4)+(B7_Tacp<<2)+(B7_PMC))	;GCS7
    	DCD ((REFEN<<23)+(TREFMD<<22)+(Trp<<20)+(Trc<<18)+(Tchr<<16)+REFCNT)

		DCD 0x32            ;SCLK power saving mode, BANKSIZE 128M/128M

    	DCD 0x30            ;MRSR6 CL=3clk
    	DCD 0x30            ;MRSR7
;    	DCD 0x20            ;MRSR6 CL=2clk
;    	DCD 0x20            ;MRSR7

;***********************************************

DRAM_END	EQU	0x33ffc000

	AREA RamData, DATA, READWRITE

	^	(DRAM_END - 0x800)
UserStack	#	256
SVCStack	#	256
UndefStack	#	256
AbortStack	#	256
IRQStack	#	256
FIQStack	#	256
	EXPORT	UserStack
	EXPORT	SVCStack
	EXPORT	UndefStack
	EXPORT	AbortStack
	EXPORT	IRQStack
	EXPORT	FIQStack

	MAP	(DRAM_END - 0x100)
SysRstVector	#	4	
UdfInsVector	#	4	
SwiSvcVector	#	4
InsAbtVector	#	4
DatAbtVector	#	4
ReservedVector	#	4
IrqSvcVector	#	4
FiqSvcVector	#	4
	EXPORT	SysRstVector
	EXPORT	UdfInsVector
	EXPORT	SwiSvcVector
	EXPORT	InsAbtVector
	EXPORT	DatAbtVector
	EXPORT	ReservedVector
	EXPORT	IrqSvcVector
	EXPORT	FiqSvcVector
	
;Do not use the label 'IntVectorTable',
;The value of IntVectorTable is different with the address you think it may be.
;IntVectorTable
HandleEINT0   	#   4
HandleEINT1   	#   4
HandleEINT2   	#   4
HandleEINT3   	#   4
HandleEINT4_7	#   4
HandleEINT8_23	#   4
HandleRSV6		#   4
HandleBATFLT   	#   4
HandleTICK   	#   4
HandleWDT		#   4
HandleTIMER0 	#   4
HandleTIMER1 	#   4
HandleTIMER2 	#   4
HandleTIMER3 	#   4
HandleTIMER4 	#   4
HandleUART2  	#   4
HandleLCD 		#   4
HandleDMA0		#   4
HandleDMA1		#   4
HandleDMA2		#   4
HandleDMA3		#   4
HandleMMC		#   4
HandleSPI0		#   4
HandleUART1		#   4
HandleRSV24		#   4
HandleUSBD		#   4
HandleUSBH		#   4
HandleIIC   	#   4
HandleUART0 	#   4
HandleSPI1 		#   4
HandleRTC 		#   4
HandleADC 		#   4

	MAP	(DRAM_END - 0x20)
pIrqStart		#	4
pIrqHandler		#	4
pIrqFinish		#	4
	EXPORT	pIrqStart
	EXPORT	pIrqHandler
	EXPORT	pIrqFinish
	
	END

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产一区二区三区久久久| 日本高清成人免费播放| 色天天综合久久久久综合片| 日韩欧美一级二级三级久久久| 国产精品美女一区二区| 久久精品国产秦先生| 91久久精品一区二区三区| 国产欧美日韩一区二区三区在线观看| 午夜视频一区在线观看| 福利一区在线观看| 精品日韩av一区二区| 亚洲第一主播视频| 色呦呦国产精品| 国产精品久久久久久久久动漫 | 亚洲人成在线观看一区二区| 麻豆精品视频在线观看免费| 欧洲日韩一区二区三区| 国产精品久线在线观看| 国产剧情一区在线| 久久久久亚洲综合| 精品亚洲国内自在自线福利| 91精品久久久久久久91蜜桃| 亚洲综合视频在线观看| 91在线视频在线| 国产精品超碰97尤物18| 成人免费高清在线观看| 国产欧美精品一区| 国产传媒欧美日韩成人| 久久久国产精品不卡| 国产一区啦啦啦在线观看| 精品99一区二区三区| 国产一区二区三区最好精华液| 欧美二区乱c少妇| 免费久久精品视频| 精品999在线播放| 国产一区福利在线| 国产精品三级电影| 99久久99久久精品国产片果冻| 中文字幕制服丝袜一区二区三区| 风间由美中文字幕在线看视频国产欧美| 亚洲精品在线免费播放| 国产真实乱子伦精品视频| 久久久99精品免费观看| 成人丝袜18视频在线观看| 国产精品久久久久久久久晋中| 99精品视频在线免费观看| 一区二区在线免费| 欧美疯狂做受xxxx富婆| 久久国内精品视频| 中文av一区二区| 欧美主播一区二区三区| 日本网站在线观看一区二区三区 | 亚洲特黄一级片| 在线精品国精品国产尤物884a| 亚洲第一会所有码转帖| 日韩女优制服丝袜电影| 国产麻豆视频一区二区| 亚洲天天做日日做天天谢日日欢| 欧美专区日韩专区| 久久福利资源站| 亚洲色图清纯唯美| 8v天堂国产在线一区二区| 国内精品第一页| 亚洲欧美二区三区| 日韩美女视频在线| 91片黄在线观看| 日韩精品成人一区二区在线| 久久精品在线观看| 欧美日韩国产影片| 成人免费视频网站在线观看| 亚洲黄色小视频| 2020国产精品自拍| 欧美午夜精品一区| 国产精品一级片在线观看| 亚洲欧美区自拍先锋| 欧美一区二区精美| 色屁屁一区二区| 国产精品伊人色| 亚洲大片精品永久免费| 中文无字幕一区二区三区| 欧美日韩一级大片网址| 成熟亚洲日本毛茸茸凸凹| 日韩—二三区免费观看av| 亚洲欧洲美洲综合色网| 日韩一区二区精品葵司在线| 91福利在线看| 成人综合婷婷国产精品久久| 日韩成人伦理电影在线观看| 亚洲人成7777| 国产精品嫩草影院com| 欧美一区二区网站| 在线观看视频欧美| 91在线视频免费观看| 国产成人久久精品77777最新版本 国产成人鲁色资源国产91色综 | 麻豆精品精品国产自在97香蕉 | 天堂成人国产精品一区| 国产精品麻豆99久久久久久| 精品对白一区国产伦| 欧美欧美欧美欧美首页| 一本大道久久精品懂色aⅴ| 成人免费不卡视频| 国产精品一二二区| 久久99精品一区二区三区 | 欧美一区三区二区| 8v天堂国产在线一区二区| 在线亚洲+欧美+日本专区| 成人av在线一区二区三区| 国产福利一区二区三区在线视频| 麻豆国产欧美一区二区三区| 午夜精品视频在线观看| 午夜欧美在线一二页| 亚洲成人7777| 天堂影院一区二区| 日本系列欧美系列| 蜜桃精品在线观看| 国产在线播放一区| 高清视频一区二区| 91偷拍与自偷拍精品| 色婷婷精品久久二区二区蜜臂av| 99久久免费国产| 欧美性色黄大片| 欧美精品免费视频| 精品久久久久久久久久久久久久久久久 | av福利精品导航| caoporn国产一区二区| 91在线看国产| 在线观看亚洲一区| 7777精品伊人久久久大香线蕉最新版| 欧美精三区欧美精三区| 日韩视频在线你懂得| 久久综合久久99| 国产精品卡一卡二卡三| 亚洲另类在线视频| 日韩中文欧美在线| 精品一区二区三区在线播放 | 在线观看一区不卡| 欧美一区二区三区视频免费 | 欧美mv和日韩mv国产网站| 久久精品视频在线免费观看| 久久精品免视看| 伊人开心综合网| 日韩av电影免费观看高清完整版| 激情欧美一区二区| 成人app网站| 制服丝袜中文字幕亚洲| 精品第一国产综合精品aⅴ| 国产精品短视频| 日韩电影一区二区三区| 国产高清在线精品| 色综合久久88色综合天天免费| 777a∨成人精品桃花网| 中文字幕欧美日本乱码一线二线| 亚洲精品一二三四区| 老司机精品视频在线| 91网站在线播放| 日韩欧美www| 亚洲欧美偷拍三级| 国产精品主播直播| 欧美日韩高清一区| 国产精品美女一区二区| 人妖欧美一区二区| 色综合久久久久久久久久久| 欧美mv日韩mv国产| 一区二区三区精品| 国产成人综合在线观看| 欧美高清精品3d| 日韩美女久久久| 国产精品91xxx| 欧美一级片在线| 亚洲国产乱码最新视频| 99天天综合性| 国产日本欧洲亚洲| 久久99国产乱子伦精品免费| 色婷婷亚洲综合| 国产精品国产精品国产专区不片| 日本不卡高清视频| 欧美丝袜自拍制服另类| 亚洲欧洲精品一区二区三区| 国产乱人伦偷精品视频不卡| 8x8x8国产精品| 亚洲成在人线免费| 欧美亚洲尤物久久| 一区二区三区精品视频| 99在线精品视频| 中文字幕一区二区日韩精品绯色| 极品销魂美女一区二区三区| 7777精品久久久大香线蕉 | 中文字幕在线观看不卡视频| 久久精品国产亚洲5555| 欧美日韩mp4| 午夜精品久久一牛影视| 欧美性感一区二区三区| 一区二区在线观看免费视频播放| 99国产精品久久| 国产精品国产三级国产普通话三级 | 中文字幕巨乱亚洲| 国产成人av资源| 国产精品视频一二三| 成人教育av在线| 亚洲欧美国产高清|