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

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

?? head.s

?? 這是上月
?? S
?? 第 1 頁 / 共 2 頁
字號:
/* * vivi/arch/s3c2410/head.S: *   Initialise hardware * * Copyright (C) 2001 MIZI Research, Inc. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful,  * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the  * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License  * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA * * * Author: Janghoon Lyu <nandy@mizi.com> * Date  : $Date: 2003/02/26 10:38:11 $ * * $Revision: 1.18 $ * * * History: * * 2002-05-14: Janghoon Lyu <nandy@mizi.com> *   - Initial code * */#include "config.h"#include "linkage.h"#include "machine.h"@ Start of executable code ENTRY(_start)ENTRY(ResetEntryPoint)@@ Exception vector table (physical address = 0x00000000)@@ 0x00: Reset	b	Reset@ 0x04: Undefined instruction exceptionUndefEntryPoint:	b	HandleUndef@ 0x08: Software interrupt exceptionSWIEntryPoint:	b	HandleSWI@ 0x0c: Prefetch Abort (Instruction Fetch Memory Abort)PrefetchAbortEnteryPoint:	b	HandlePrefetchAbort@ 0x10: Data Access Memory AbortDataAbortEntryPoint:	b	HandleDataAbort@ 0x14: Not usedNotUsedEntryPoint:	b	HandleNotUsed@ 0x18: IRQ(Interrupt Request) exceptionIRQEntryPoint:	b	HandleIRQ@ 0x1c: FIQ(Fast Interrupt Request) exceptionFIQEntryPoint:	b	HandleFIQ@@ VIVI magics@@ 0x20: magic number so we can verify that we only put 	.long   0@ 0x24:	.long   0@ 0x28: where this vivi was linked, so we can put it in memory in the right place	.long   _start@ 0x2C: this contains the platform, cpu and machine id	.long   ARCHITECTURE_MAGIC@ 0x30: vivi capabilities 	.long   0#ifdef CONFIG_PM@ 0x34:	b	SleepRamProc#endif#ifdef CONFIG_TEST@ 0x38:	b	hmi#endif@@ Start VIVI head@Reset:	@ disable watch dog timer	mov	r1, #0x53000000	mov	r2, #0x0	str	r2, [r1]#ifdef CONFIG_S3C2410_MPORT3	mov	r1, #0x56000000	mov	r2, #0x00000005	str	r2, [r1, #0x70]	mov r2, #0x00000001	str	r2, [r1, #0x78]	mov	r2, #0x00000001	str r2, [r1, #0x74]#endif	@ disable all interrupts	mov	r1, #INT_CTL_BASE	mov	r2, #0xffffffff	str	r2, [r1, #oINTMSK]	ldr	r2, =0x7ff	str	r2, [r1, #oINTSUBMSK]		@ initialise system clocks	mov	r1, #CLK_CTL_BASE	mvn	r2, #0xff000000	str	r2, [r1, #oLOCKTIME]	@ldr	r2, mpll_50mhz	@str	r2, [r1, #oMPLLCON]#ifndef CONFIG_S3C2410_MPORT1	@ 1:2:4	mov	r1, #CLK_CTL_BASE	mov	r2, #0x3	str	r2, [r1, #oCLKDIVN]	mrc	p15, 0, r1, c1, c0, 0		@ read ctrl register 	orr	r1, r1, #0xc0000000		@ Asynchronous  	mcr	p15, 0, r1, c1, c0, 0		@ write ctrl register	@ now, CPU clock is 200 Mhz	mov	r1, #CLK_CTL_BASE	ldr	r2, mpll_200mhz	str	r2, [r1, #oMPLLCON]#else	@ 1:2:2    mov r1, #CLK_CTL_BASE    ldr r2, clock_clkdivn    str r2, [r1, #oCLKDIVN]    mrc p15, 0, r1, c1, c0, 0       @ read ctrl register    orr r1, r1, #0xc0000000     @ Asynchronous    mcr p15, 0, r1, c1, c0, 0       @ write ctrl register    @ now, CPU clock is 100 Mhz    mov r1, #CLK_CTL_BASE    ldr r2, mpll_100mhz    str r2, [r1, #oMPLLCON]#endif	bl	memsetup#ifdef CONFIG_PM	@ Check if this is a wake-up from sleep	ldr	r1, PMST_ADDR	ldr	r0, [r1]	tst	r0, #(PMST_SMR)	bne	WakeupStart#endif#ifdef CONFIG_S3C2410_SMDK	@ All LED on	mov	r1, #GPIO_CTL_BASE	add	r1, r1, #oGPIO_F	ldr	r2,=0x55aa	str	r2, [r1, #oGPIO_CON]	mov	r2, #0xff	str	r2, [r1, #oGPIO_UP]	mov	r2, #0x00	str	r2, [r1, #oGPIO_DAT]#endif  #if 0	@ SVC	mrs	r0, cpsr	bic	r0, r0, #0xdf	orr	r1, r0, #0xd3	msr	cpsr_all, r1#endif	@ set GPIO for UART	mov	r1, #GPIO_CTL_BASE	add	r1, r1, #oGPIO_H	ldr	r2, gpio_con_uart		str	r2, [r1, #oGPIO_CON]	ldr	r2, gpio_up_uart	str	r2, [r1, #oGPIO_UP]		bl	InitUART#ifdef CONFIG_DEBUG_LL	@ Print current Program Counter	ldr	r1, SerBase	mov	r0, #'\r'	bl	PrintChar	mov	r0, #'\n'	bl	PrintChar	mov	r0, #'@'	bl	PrintChar	mov	r0, pc	bl	PrintHexWord#endif#ifdef CONFIG_BOOTUP_MEMTEST	@ simple memory test to find some DRAM flaults.	bl	memtest#endif#ifdef CONFIG_S3C2410_NAND_BOOT	bl	copy_myself	@ jump to ram	ldr	r1, =on_the_ram	add	pc, r1, #0	nop	nop1:	b	1b		@ infinite loopon_the_ram:#endif#ifdef CONFIG_DEBUG_LL	ldr	r1, SerBase	ldr	r0, STR_STACK	bl	PrintWord	ldr	r0, DW_STACK_START	bl	PrintHexWord#endif	@ get read to call C functions	ldr	sp, DW_STACK_START	@ setup stack pointer	mov	fp, #0			@ no previous frame, so fp=0	mov	a2, #0			@ set argv to NULL 	bl	main			@ call main 	mov	pc, #FLASH_BASE		@ otherwise, reboot@@ End VIVI head@/* * subroutines */@@ Wake-up codes@#ifdef CONFIG_PMWakeupStart:	@ Clear sleep reset bit	ldr	r0, PMST_ADDR	mov	r1, #PMST_SMR	str	r1, [r0]	@ Release the SDRAM signal protections	ldr	r0, PMCTL1_ADDR	ldr	r1, [r0]	bic	r1, r1, #(SCLKE | SCLK1 | SCLK0)	str	r1, [r0]	@ Go...	ldr	r0, PMSR0_ADDR	@ read a return address	ldr	r1, [r0]	mov	pc, r1	nop	nop1:	b	1b		@ infinite loopSleepRamProc:	@ SDRAM is in the self-refresh mode */	ldr	r0, REFR_ADDR	ldr	r1, [r0]	orr	r1, r1, #SELF_REFRESH	str	r1, [r0]	@ wait until SDRAM into self-refresh	mov	r1, #161:	subs	r1, r1, #1		bne	1b	@ Set the SDRAM singal protections	ldr	r0, PMCTL1_ADDR	ldr	r1, [r0]	orr	r1, r1, #(SCLKE | SCLK1 | SCLK0)	str	r1, [r0]	/* Sleep... Now */	ldr	r0, PMCTL0_ADDR	ldr	r1, [r0]	orr	r1, r1, #SLEEP_ON	str	r1, [r0]	1:	b	1b#ifdef CONFIG_TESThmi:	ldr	r0, PMCTL0_ADDR	ldr	r1, =0x7fff0	str	r1, [r0]		@ All LED on	mov	r1, #GPIO_CTL_BASE	add	r1, r1, #oGPIO_F	ldr	r2,=0x55aa	str	r2, [r1, #oGPIO_CON]	mov	r2, #0xff	str	r2, [r1, #oGPIO_UP]	mov	r2, #0xe0	str	r2, [r1, #oGPIO_DAT]1:	b	1b#endif#endifENTRY(memsetup)	@ initialise the static memory 	@ set memory control registers	mov	r1, #MEM_CTL_BASE	adrl	r2, mem_cfg_val	add	r3, r1, #521:	ldr	r4, [r2], #4	str	r4, [r1], #4	cmp	r1, r3	bne	1b	mov	pc, lr#ifdef CONFIG_S3C2410_NAND_BOOT@@ copy_myself: copy vivi to ram@copy_myself:	mov	r10, lr	@ reset NAND	mov	r1, #NAND_CTL_BASE	ldr	r2, =0xf830		@ initial value	str	r2, [r1, #oNFCONF]	ldr	r2, [r1, #oNFCONF]	bic	r2, r2, #0x800		@ enable chip	str	r2, [r1, #oNFCONF]	mov	r2, #0xff		@ RESET command	strb	r2, [r1, #oNFCMD]	mov	r3, #0			@ wait 1:	add	r3, r3, #0x1	cmp	r3, #0xa	blt	1b2:	ldr	r2, [r1, #oNFSTAT]	@ wait ready	tst	r2, #0x1	beq	2b	ldr	r2, [r1, #oNFCONF]	orr	r2, r2, #0x800		@ disable chip	str	r2, [r1, #oNFCONF]	@ get read to call C functions (for nand_read())	ldr	sp, DW_STACK_START	@ setup stack pointer	mov	fp, #0			@ no previous frame, so fp=0	@ copy vivi to RAM	ldr	r0, =0x30008000	ldr   r1, =0x00030000	ldr	r2, =0x001d0000	bl	nand_read_ll	tst	r0, #0x0	/*beq	ok_nand_read*/	beq done_nand_read#ifdef CONFIG_DEBUG_LLbad_nand_read: 	ldr	r0, STR_FAIL	ldr	r1, SerBase	bl	PrintWord1:	b	1b		@ infinite loop #endif	ok_nand_read:#ifdef CONFIG_DEBUG_LL	ldr	r0, STR_OK	ldr	r1, SerBase	bl	PrintWord#endif	@ verify	mov	r0, #0	ldr	r1, =0x33f00000	mov	r2, #0x400	@ 4 bytes * 1024 = 4K-bytesgo_next:	ldr	r3, [r0], #4	ldr	r4, [r1], #4	teq	r3, r4	bne	notmatch	subs	r2, r2, #4	beq	done_nand_read		bne	go_nextnotmatch:#ifdef CONFIG_DEBUG_LL	sub	r0, r0, #4	ldr	r1, SerBase	bl	PrintHexWord	ldr	r0, STR_FAIL	ldr	r1, SerBase	bl	PrintWord#endif1:	b	1bdone_nand_read:#ifdef CONFIG_DEBUG_LL	ldr	r0, STR_OK	ldr	r1, SerBase	bl	PrintWord#endif	mov	pc, r10@ clear memory@ r0: start address@ r1: lengthmem_clear:	mov	r2, #0	mov	r3, r2	mov	r4, r2	mov	r5, r2	mov	r6, r2	mov	r7, r2	mov	r8, r2	mov	r9, r2clear_loop:	stmia	r0!, {r2-r9}	subs	r1, r1, #(8 * 4)	bne	clear_loop

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
99精品欧美一区二区三区综合在线| 亚洲最新视频在线观看| 欧美日韩亚洲另类| 色先锋aa成人| av电影在线观看一区| 国产河南妇女毛片精品久久久| 蜜桃视频一区二区三区| 日本欧美在线观看| 天天色综合成人网| 午夜精品在线视频一区| 亚洲午夜私人影院| 日韩国产成人精品| 久久精品国产99久久6| 国产在线麻豆精品观看| 激情久久久久久久久久久久久久久久| 久久国产综合精品| 激情小说欧美图片| 成人免费视频一区| 91黄色小视频| 91精品国产全国免费观看| 欧美一区二区三区啪啪| 精品处破学生在线二十三| 日韩一区二区在线观看| 久久久久88色偷偷免费| 国产精品欧美极品| 亚洲自拍偷拍av| 免费观看在线色综合| 国产成人免费视频| 97久久人人超碰| 欧美日韩精品一区二区天天拍小说 | 亚洲成av人片在线观看| 亚洲成人av中文| 久久国产精品免费| 成人免费av网站| 色婷婷精品久久二区二区蜜臀av| 91超碰这里只有精品国产| 久久婷婷综合激情| 一级精品视频在线观看宜春院| 日韩高清电影一区| 成年人国产精品| 欧美精品久久久久久久久老牛影院| 精品久久久三级丝袜| 自拍偷在线精品自拍偷无码专区| 亚洲第一福利一区| 丁香啪啪综合成人亚洲小说| 欧美色视频在线| 中文字幕第一区综合| 亚洲大片免费看| 成人免费黄色在线| 欧美变态tickling挠脚心| 中文字幕日韩一区二区| 久久疯狂做爰流白浆xx| 欧美影院精品一区| 国产精品美女久久久久久久| 午夜不卡在线视频| 91论坛在线播放| 久久久久88色偷偷免费| 日韩综合在线视频| 91麻豆蜜桃一区二区三区| 久久精品一级爱片| 美女一区二区三区| 欧美在线观看一区| 亚洲欧美日韩一区| 福利电影一区二区| 国产亚洲一区字幕| 免费成人在线观看视频| 精品视频在线免费| 亚洲黄色小视频| 99久久伊人久久99| 精品国产电影一区二区| 奇米精品一区二区三区在线观看一| 欧洲精品在线观看| 亚洲精品视频在线观看免费| 国产成人精品三级| 欧美激情一区二区三区| 国产麻豆精品在线| 久久精品亚洲乱码伦伦中文| 久久精品99国产国产精| 日韩一区二区三区在线观看| 天使萌一区二区三区免费观看| 欧美综合色免费| 亚洲一区二区欧美激情| 欧美系列日韩一区| 婷婷综合另类小说色区| 宅男在线国产精品| 日本不卡视频一二三区| 日韩三级免费观看| 国产专区综合网| 国产人妖乱国产精品人妖| 粗大黑人巨茎大战欧美成人| 日本一二三四高清不卡| av亚洲产国偷v产偷v自拍| 中文字幕欧美一| 欧美伊人精品成人久久综合97| 亚洲综合在线电影| 在线播放91灌醉迷j高跟美女| 麻豆中文一区二区| 国产亚洲精久久久久久| 在线精品视频免费观看| 一区二区三区在线不卡| 欧美日韩精品一区二区三区 | 激情综合网激情| 国产亚洲午夜高清国产拍精品| 成人小视频在线观看| 亚洲美女精品一区| 欧美肥妇free| 国产二区国产一区在线观看| 国产精品日韩精品欧美在线| 91精彩视频在线| 美女爽到高潮91| 中文字幕国产精品一区二区| 欧美在线视频全部完| 久久99久久精品| 中文字幕在线不卡国产视频| 欧美日韩国产区一| 国产成人免费在线视频| 亚洲国产成人av| 久久久亚洲精品石原莉奈| 一本大道久久a久久综合| 免费xxxx性欧美18vr| 中文字幕中文乱码欧美一区二区 | 欧美乱妇23p| 粉嫩13p一区二区三区| 亚洲一二三区不卡| 久久精品人人爽人人爽| 欧美日韩黄色一区二区| 成人妖精视频yjsp地址| 欧美96一区二区免费视频| 亚洲人成在线观看一区二区| 日韩一级大片在线| 欧美自拍偷拍午夜视频| 国产成人av影院| 免费观看成人av| 亚洲一区欧美一区| 国产精品伦理一区二区| 欧美精品一区二区三区蜜臀| 欧美无砖砖区免费| 91免费观看视频在线| 国产精品中文字幕一区二区三区| 亚洲成av人片一区二区| 亚洲嫩草精品久久| 国产精品久久久久永久免费观看| 欧美大片拔萝卜| 9191成人精品久久| 欧美三区在线观看| 色婷婷香蕉在线一区二区| 波多野结衣中文字幕一区| 黑人巨大精品欧美黑白配亚洲| 日日夜夜精品视频天天综合网| 亚洲嫩草精品久久| 亚洲激情中文1区| 中文字幕视频一区| 亚洲视频一区在线观看| 国产精品三级av| 欧美国产视频在线| 国产亚洲一区二区在线观看| 精品久久久三级丝袜| 日韩欧美国产一区二区三区| 91精品国产一区二区三区蜜臀| 欧美亚州韩日在线看免费版国语版| 91性感美女视频| 91影院在线观看| 欧美午夜精品久久久久久孕妇| 色婷婷av一区二区三区软件| 91蜜桃网址入口| 精品视频免费在线| 欧美日韩国产经典色站一区二区三区| 欧美亚洲国产bt| 欧美日韩在线电影| 日韩一区二区三免费高清| 精品免费日韩av| 国产色婷婷亚洲99精品小说| 中文天堂在线一区| 一区二区三区日韩| 日韩成人精品在线观看| 激情文学综合插| av在线不卡观看免费观看| 欧美性生活影院| 欧美一级搡bbbb搡bbbb| 国产亚洲人成网站| 一区二区不卡在线视频 午夜欧美不卡在| 一区二区三区四区五区视频在线观看 | 日韩一级完整毛片| 精品sm捆绑视频| 中文字幕一区三区| 午夜精品一区在线观看| 精品一区二区三区日韩| 成人福利视频在线| 91麻豆精品91久久久久久清纯| 欧美成人女星排名| 18成人在线观看| 日韩成人精品在线观看| www.亚洲色图.com| 337p亚洲精品色噜噜| 国产精品嫩草影院com| 亚洲va韩国va欧美va精品| 风间由美一区二区三区在线观看| 欧美性三三影院| 国产精品毛片久久久久久| 日韩高清在线电影|