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

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專(zhuān)輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? memsetup.s

?? uboot for at91rm9200dk
?? S
字號(hào):
/* * Most of this taken from Redboot hal_platform_setup.h with cleanup * * NOTE: I haven't clean this up considerably, just enough to get it * running. See hal_platform_setup.h for the source. See * board/cradle/memsetup.S for another PXA250 setup that is * much cleaner. * * See file CREDITS for list of people who contributed to this * project. * * 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 */#include <config.h>#include <version.h>#include <asm/arch/pxa-regs.h>DRAM_SIZE:  .long   CFG_DRAM_SIZE/* wait for coprocessor write complete */   .macro CPWAIT reg   mrc  p15,0,\reg,c2,c0,0   mov  \reg,\reg   sub  pc,pc,#4   .endm/* * 	Memory setup */.globl memsetupmemsetup:    mov      r10, lr	/* Set up GPIO pins first ----------------------------------------- */	ldr		r0,	=GPSR0	ldr		r1,	=CFG_GPSR0_VAL	str		r1,   [r0]	ldr		r0,	=GPSR1	ldr		r1,	=CFG_GPSR1_VAL	str		r1,   [r0]	ldr		r0,	=GPSR2	ldr		r1,	=CFG_GPSR2_VAL	str		r1,   [r0]	ldr		r0,	=GPCR0	ldr		r1,	=CFG_GPCR0_VAL	str		r1,   [r0]	ldr		r0,	=GPCR1	ldr		r1,	=CFG_GPCR1_VAL	str		r1,   [r0]	ldr		r0,	=GPCR2	ldr		r1,	=CFG_GPCR2_VAL	str		r1,   [r0]	ldr		r0,	=GPDR0	ldr		r1,	=CFG_GPDR0_VAL	str		r1,   [r0]	ldr		r0,	=GPDR1	ldr		r1,	=CFG_GPDR1_VAL	str		r1,   [r0]	ldr		r0,	=GPDR2	ldr		r1,	=CFG_GPDR2_VAL	str		r1,   [r0]	ldr		r0,	=GAFR0_L	ldr		r1,	=CFG_GAFR0_L_VAL	str		r1,   [r0]	ldr		r0,	=GAFR0_U	ldr		r1,	=CFG_GAFR0_U_VAL	str		r1,   [r0]	ldr		r0,	=GAFR1_L	ldr		r1,	=CFG_GAFR1_L_VAL	str		r1,   [r0]	ldr		r0,	=GAFR1_U	ldr		r1,	=CFG_GAFR1_U_VAL	str		r1,   [r0]	ldr		r0,	=GAFR2_L	ldr		r1,	=CFG_GAFR2_L_VAL	str		r1,   [r0]	ldr		r0,	=GAFR2_U	ldr		r1,	=CFG_GAFR2_U_VAL	str		r1,   [r0]	ldr	r0,	=PSSR		/* enable GPIO pins */	ldr		r1,	=CFG_PSSR_VAL	str		r1,   [r0]	/* ---------------------------------------------------------------- */	/* Enable memory interface                                          */	/*                                                                  */	/* The sequence below is based on the recommended init steps        */	/* detailed in the Intel PXA250 Operating Systems Developers Guide, */	/* Chapter 10.                                                      */	/* ---------------------------------------------------------------- */	/* ---------------------------------------------------------------- */	/* Step 1: Wait for at least 200 microsedonds to allow internal     */	/*         clocks to settle. Only necessary after hard reset...     */	/*         FIXME: can be optimized later                            */	/* ---------------------------------------------------------------- */	ldr r3, =OSCR			/* reset the OS Timer Count to zero */	mov r2, #0	str r2, [r3]	ldr r4, =0x300			/* really 0x2E1 is about 200usec,   */					/* so 0x300 should be plenty        */1:	ldr r2, [r3]	cmp r4, r2	bgt 1bmem_init:	ldr     r1,  =MEMC_BASE		/* get memory controller base addr. */	/* ---------------------------------------------------------------- */	/* Step 2a: Initialize Asynchronous static memory controller        */	/* ---------------------------------------------------------------- */	/* MSC registers: timing, bus width, mem type                       */	/* MSC0: nCS(0,1)                                                   */	ldr     r2,   =CFG_MSC0_VAL	str     r2,   [r1, #MSC0_OFFSET]	ldr     r2,   [r1, #MSC0_OFFSET]	/* read back to ensure      */						/* that data latches        */	/* MSC1: nCS(2,3)                                                   */	ldr     r2,  =CFG_MSC1_VAL	str     r2,  [r1, #MSC1_OFFSET]	ldr     r2,  [r1, #MSC1_OFFSET]	/* MSC2: nCS(4,5)                                                   */	ldr     r2,  =CFG_MSC2_VAL	str     r2,  [r1, #MSC2_OFFSET]	ldr     r2,  [r1, #MSC2_OFFSET]	/* ---------------------------------------------------------------- */	/* Step 2b: Initialize Card Interface                               */	/* ---------------------------------------------------------------- */	/* MECR: Memory Expansion Card Register                             */	ldr     r2,  =CFG_MECR_VAL	str     r2,  [r1, #MECR_OFFSET]	ldr	r2,	[r1, #MECR_OFFSET]	/* MCMEM0: Card Interface slot 0 timing                             */	ldr     r2,  =CFG_MCMEM0_VAL	str     r2,  [r1, #MCMEM0_OFFSET]	ldr	r2,	[r1, #MCMEM0_OFFSET]	/* MCMEM1: Card Interface slot 1 timing                             */	ldr     r2,  =CFG_MCMEM1_VAL	str     r2,  [r1, #MCMEM1_OFFSET]	ldr	r2,	[r1, #MCMEM1_OFFSET]	/* MCATT0: Card Interface Attribute Space Timing, slot 0            */	ldr     r2,  =CFG_MCATT0_VAL	str     r2,  [r1, #MCATT0_OFFSET]	ldr	r2,	[r1, #MCATT0_OFFSET]	/* MCATT1: Card Interface Attribute Space Timing, slot 1            */	ldr     r2,  =CFG_MCATT1_VAL	str     r2,  [r1, #MCATT1_OFFSET]	ldr	r2,	[r1, #MCATT1_OFFSET]	/* MCIO0: Card Interface I/O Space Timing, slot 0                   */	ldr     r2,  =CFG_MCIO0_VAL	str     r2,  [r1, #MCIO0_OFFSET]	ldr	r2,	[r1, #MCIO0_OFFSET]	/* MCIO1: Card Interface I/O Space Timing, slot 1                   */	ldr     r2,  =CFG_MCIO1_VAL	str     r2,  [r1, #MCIO1_OFFSET]	ldr	r2,	[r1, #MCIO1_OFFSET]	/* ---------------------------------------------------------------- */	/* Step 2c: Write FLYCNFG  FIXME: what's that???                    */	/* ---------------------------------------------------------------- */	/* ---------------------------------------------------------------- */	/* Step 2d: Initialize Timing for Sync Memory (SDCLK0)              */	/* ---------------------------------------------------------------- */	/* Before accessing MDREFR we need a valid DRI field, so we set     */	/* this to power on defaults + DRI field.                           */	ldr     r3,     =CFG_MDREFR_VAL	ldr     r2,     =0xFFF	and     r3,     r3,  r2	ldr	r4,	=0x03ca4000	orr     r4,     r4,  r3	str	r4,	[r1, #MDREFR_OFFSET]	/* write back MDREFR        */	ldr     r4,  [r1, #MDREFR_OFFSET]	/* Note: preserve the mdrefr value in r4                            */	/* ---------------------------------------------------------------- */	/* Step 3: Initialize Synchronous Static Memory (Flash/Peripherals) */	/* ---------------------------------------------------------------- */	/* Initialize SXCNFG register. Assert the enable bits               */	/* Write SXMRS to cause an MRS command to all enabled banks of      */	/* synchronous static memory. Note that SXLCR need not be written   */	/* at this time.                                                    */	/* FIXME: we use async mode for now                                 */	/* ---------------------------------------------------------------- */	/* Step 4: Initialize SDRAM                                         */	/* ---------------------------------------------------------------- */	/* set MDREFR according to user define with exception of a few bits */	ldr     r4,     =CFG_MDREFR_VAL	orr	r4,	r4,	#(MDREFR_SLFRSH)	bic	r4,	r4,	#(MDREFR_E1PIN|MDREFR_E0PIN)	str     r4,     [r1, #MDREFR_OFFSET]    /* write back MDREFR        */	ldr     r4,  [r1, #MDREFR_OFFSET]	/* Step 4b: de-assert MDREFR:SLFRSH.                                */	bic	r4,	r4,	#(MDREFR_SLFRSH)	str     r4,     [r1, #MDREFR_OFFSET]    /* write back MDREFR        */	ldr     r4,  [r1, #MDREFR_OFFSET]	/* Step 4c: assert MDREFR:E1PIN and E0PIO as desired                */	ldr     r4,     =CFG_MDREFR_VAL	str     r4,     [r1, #MDREFR_OFFSET]    /* write back MDREFR        */	ldr     r4,     [r1, #MDREFR_OFFSET]	/* Step 4d: write MDCNFG with MDCNFG:DEx deasserted (set to 0), to  */	/*          configure but not enable each SDRAM partition pair.     */	ldr	r4,	=CFG_MDCNFG_VAL	bic	r4,	r4,	#(MDCNFG_DE0|MDCNFG_DE1)	str     r4,     [r1, #MDCNFG_OFFSET]	/* write back MDCNFG        */	ldr     r4,     [r1, #MDCNFG_OFFSET]	/* Step 4e: Wait for the clock to the SDRAMs to stabilize,          */	/*          100..200 祍ec.                                          */	ldr r3, =OSCR			/* reset the OS Timer Count to zero */	mov r2, #0	    str r2, [r3]	ldr r4, =0x300			/* really 0x2E1 is about 200usec,   */					/* so 0x300 should be plenty        */1:	    ldr r2, [r3]	    cmp r4, r2	    bgt 1b	/* Step 4f: Trigger a number (usually 8) refresh cycles by          */	/*          attempting non-burst read or write accesses to disabled */	/*          SDRAM, as commonly specified in the power up sequence   */	/*          documented in SDRAM data sheets. The address(es) used   */	/*          for this purpose must not be cacheable.                 */	ldr	r3,	=CFG_DRAM_BASE	str	r2,	[r3]	str	r2,	[r3]	str	r2,	[r3]	str	r2,	[r3]	str	r2,	[r3]	str	r2,	[r3]	str	r2,	[r3]	str	r2,	[r3]	/* Step 4g: Write MDCNFG with enable bits asserted                  */	/*          (MDCNFG:DEx set to 1).                                  */	ldr     r3,  [r1, #MDCNFG_OFFSET]	orr	r3,	r3,	#(MDCNFG_DE0|MDCNFG_DE1)	str     r3,  [r1, #MDCNFG_OFFSET]	/* Step 4h: Write MDMRS.                                            */	ldr     r2,  =CFG_MDMRS_VAL	str     r2,  [r1, #MDMRS_OFFSET]	/* We are finished with Intel's memory controller initialisation    */	/* ---------------------------------------------------------------- */	/* Disable (mask) all interrupts at interrupt controller            */	/* ---------------------------------------------------------------- */initirqs:	mov     r1, #0		/* clear int. level register (IRQ, not FIQ) */	ldr     r2,  =ICLR	str     r1,  [r2]	ldr     r2,  =ICMR	/* mask all interrupts at the controller    */	str     r1,  [r2]	/* ---------------------------------------------------------------- */	/* Clock initialisation                                             */	/* ---------------------------------------------------------------- */initclks:	/* Disable the peripheral clocks, and set the core clock frequency  */	/* (hard-coding at 398.12MHz for now).                              */	/* Turn Off ALL on-chip peripheral clocks for re-configuration      */	/* Note: See label 'ENABLECLKS' for the re-enabling                 */	ldr     r1,  =CKEN	mov     r2,  #0	str     r2,  [r1]	/* default value in case no valid rotary switch setting is found    */	ldr     r2, =(CCCR_L27|CCCR_M2|CCCR_N10)  /* DEFAULT: {200/200/100} */	/* ... and write the core clock config register                     */	ldr     r1,  =CCCR	str     r2,  [r1]#ifdef RTC	/* enable the 32Khz oscillator for RTC and PowerManager             */	ldr     r1,  =OSCC	mov     r2,  #OSCC_OON	str     r2,  [r1]	/* NOTE:  spin here until OSCC.OOK get set, meaning the PLL         */	/* has settled.                                                     */60:	ldr     r2, [r1]	ands    r2, r2, #1	beq     60b#endif	/* ---------------------------------------------------------------- */	/*                                                                  */	/* ---------------------------------------------------------------- */	/* Save SDRAM size */    ldr     r1, =DRAM_SIZE	 str	   r8, [r1]	/* Interrupt init: Mask all interrupts                              */    ldr	r0, =ICMR /* enable no sources */	mov r1, #0    str r1, [r0]	/* FIXME */#define NODEBUG#ifdef NODEBUG	/*Disable software and data breakpoints */	mov	r0,#0	mcr	p15,0,r0,c14,c8,0  /* ibcr0 */	mcr	p15,0,r0,c14,c9,0  /* ibcr1 */	mcr	p15,0,r0,c14,c4,0  /* dbcon */	/*Enable all debug functionality */	mov	r0,#0x80000000	mcr	p14,0,r0,c10,c0,0  /* dcsr */#endif	/* ---------------------------------------------------------------- */	/* End memsetup                                                     */	/* ---------------------------------------------------------------- */endmemsetup:    mov     pc, lr

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
99久久国产综合色|国产精品| 天堂蜜桃一区二区三区| 中文字幕一区二区三区乱码在线| 亚洲一区影音先锋| 国产一区二区精品久久91| 91首页免费视频| 久久亚区不卡日本| 亚洲国产三级在线| 国产伦精品一区二区三区在线观看| 高清国产一区二区| 欧美久久一二区| 国产精品素人一区二区| 青草av.久久免费一区| fc2成人免费人成在线观看播放 | 国产精品不卡在线| 欧美a级理论片| 色综合欧美在线视频区| 欧美精品一区二区三区在线| 亚洲国产精品久久一线不卡| 成人午夜av电影| 欧美成人国产一区二区| 夜夜嗨av一区二区三区| 国产一区欧美一区| 欧美日韩大陆在线| 亚洲品质自拍视频网站| 国产精品亚洲午夜一区二区三区| 777午夜精品视频在线播放| 亚洲欧美综合另类在线卡通| 麻豆精品久久久| 欧美日韩精品是欧美日韩精品| 久久久三级国产网站| 日产国产高清一区二区三区| 欧美亚洲综合久久| 亚洲欧美二区三区| 国产99久久久精品| 精品国产91亚洲一区二区三区婷婷| 亚洲一区视频在线观看视频| 91丨九色丨蝌蚪丨老版| 国产欧美日韩一区二区三区在线观看| 日韩黄色在线观看| 欧美午夜精品久久久久久超碰| 1区2区3区欧美| 不卡欧美aaaaa| 国产丝袜欧美中文另类| 国模一区二区三区白浆| 欧美成人精品二区三区99精品| 天天色综合天天| 一本一本大道香蕉久在线精品| 精品99久久久久久| 久久精品国产亚洲高清剧情介绍| 欧美日韩国产免费| 亚洲成精国产精品女| 欧美午夜精品免费| 亚洲国产一区二区a毛片| a亚洲天堂av| 日韩理论片网站| 91在线观看一区二区| 亚洲欧洲日本在线| 91视频免费观看| 一区二区在线看| 欧美体内she精高潮| 亚洲3atv精品一区二区三区| 精品视频色一区| 五月天久久比比资源色| 欧美乱妇20p| 亚洲成人手机在线| 91精品综合久久久久久| 日本不卡中文字幕| 日韩视频在线永久播放| 经典三级视频一区| 久久日一线二线三线suv| 国产一区二三区| 国产欧美一区二区三区在线看蜜臀| 粉嫩av一区二区三区粉嫩| 国产精品视频一二三| 成人一道本在线| 亚洲欧美国产77777| 欧美日韩久久一区二区| 欧美96一区二区免费视频| 日韩欧美国产成人一区二区| 国产真实乱偷精品视频免| 欧美国产欧美综合| 国产美女av一区二区三区| 日韩欧美国产一区在线观看| 国产精品亚洲综合一区在线观看| 国产精品毛片无遮挡高清| 色狠狠色狠狠综合| 日韩经典中文字幕一区| 久久精品一区二区| 91免费看视频| 奇米777欧美一区二区| 欧美va在线播放| 成人av电影免费观看| 婷婷久久综合九色综合绿巨人 | 一区二区三区在线影院| 欧美日韩一区二区欧美激情| 蜜桃传媒麻豆第一区在线观看| 精品国产乱码久久久久久久久| 福利视频网站一区二区三区| 亚洲精品日韩专区silk| 日韩午夜激情视频| 国产69精品久久久久毛片| 亚洲一区在线视频观看| 精品国产乱码91久久久久久网站| 成人手机电影网| 三级在线观看一区二区| 久久久国产午夜精品| 91视频免费观看| 美女www一区二区| 亚洲欧洲99久久| 日韩欧美你懂的| 91小视频在线| 精品一区二区在线播放| 亚洲欧美在线高清| 日韩精品一区二区在线观看| 97se亚洲国产综合自在线| 日本午夜精品视频在线观看 | 激情文学综合网| 亚洲伦在线观看| 久久亚洲二区三区| 欧美视频一区在线| 豆国产96在线|亚洲| 日本一不卡视频| 亚洲视频综合在线| 久久夜色精品一区| 欧美日韩成人在线一区| 成人小视频在线| 美腿丝袜亚洲一区| 亚洲久本草在线中文字幕| 精品国产乱码久久久久久牛牛 | 视频一区二区国产| 中文字幕一区二区三区乱码在线| 日韩精品综合一本久道在线视频| 色美美综合视频| 国产精品一区二区视频| 日韩精品久久久久久| 久久嫩草精品久久久久| 欧美区一区二区三区| 成人免费av资源| 看电视剧不卡顿的网站| 亚洲国产成人av| 亚洲欧美日韩中文字幕一区二区三区| 精品福利一区二区三区| 欧美妇女性影城| 91丨九色丨尤物| 国产精品综合在线视频| 青青国产91久久久久久| 亚洲国产美女搞黄色| 最新高清无码专区| 中国av一区二区三区| 制服丝袜成人动漫| 欧美亚洲免费在线一区| 91影视在线播放| 国产电影一区在线| 日本91福利区| 亚洲黄色av一区| 久久久国产午夜精品 | 成人免费视频国产在线观看| 国内成+人亚洲+欧美+综合在线| 日本成人在线一区| 日韩精品一级中文字幕精品视频免费观看 | 最新久久zyz资源站| 国产亚洲欧美一级| 久久夜色精品一区| 久久影院午夜论| 亚洲精品在线免费播放| 欧美日韩一区中文字幕| 欧美日韩国产中文| 欧美专区日韩专区| 欧美在线不卡一区| 欧美性受xxxx黑人xyx性爽| 色综合天天狠狠| 一本久久综合亚洲鲁鲁五月天| 99久久国产综合精品色伊| 99久久精品国产导航| 成人国产视频在线观看| 成人午夜视频在线观看| 极品美女销魂一区二区三区免费| 亚洲国产精品影院| 午夜成人免费视频| 欧美bbbbb| 国产一区二区福利视频| 99视频在线观看一区三区| 在线观看www91| 欧美一级精品在线| 久久精品免视看| 一区二区三区在线播放| 日本伊人精品一区二区三区观看方式| 久久99久久99| 成人免费电影视频| 欧美日韩午夜精品| 久久久欧美精品sm网站| 中文字幕一区二区三| 午夜一区二区三区在线观看| 黄色日韩网站视频| 91免费视频网| 日韩欧美色电影| 亚洲天堂网中文字| 日本不卡高清视频| proumb性欧美在线观看|