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

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

?? rominit.s

?? WINDRIVER MCP750 BSP
?? S
?? 第 1 頁 / 共 3 頁
字號:
/* romInit.s - Motorola MCP750/MCPN750 ROM initialization module *//* Copyright 1984-2001 Wind River Systems, Inc. *//* Copyright 1996,1997,1998,1999 Motorola, Inc. All Rights Reserved */	.data	.globl  copyright_wind_river	.long   copyright_wind_river/*modification history--------------------01l,01apr02,mil  Added RAM bank probe pattern for 16MB for bus capacitance                 (SPR #73257).01k,31oct01,mil  Use of macros for directives and function header updates.01j,08may01,pch  Add assembler abstractions (FUNC_EXPORT, FUNC_BEGIN, etc.)01i,21jan00,dat  fixed assembler warning01h,21dec98,mas  Added setting of SIED and BHTE bits in HID0 (SPR 22955)01g,30sep98,scb  Fix error which was not clearing HID0 ILOCK bit as intended.01f,21jul98,scb  #define name cleanup - removal of board name defines.01e,04jun98,tb   fix register contention during falcon initialization.01d,08may98,tb   Turned on Falcon's ECC01c,08may98,tb   fixed bug; r3 now contains correct DRAM size01b,13jan98,srr  SPR 20104, correct use of HI and HIADJ macros01a,09jan98,rhk  created (from version 01k, mv2600/romInit.s)*//*DESCRIPTIONThis module contains the entry code for the VxWorks bootrom.The entry point romInit, is the first code executed on power-up.It sets the BOOT_COLD parameter to be passed to the genericromStart() routine.The routine sysToMonitor() jumps to the location 4 bytespast the beginning of romInit, to perform a "warm boot".This entry point allows a parameter to be passed to romStart().This code is intended to be generic across PowerPC 603/604 boards.Hardware that requires special register setting or memorymapping to be done immediately, may do so here.*/#define	_ASMLANGUAGE#include "vxWorks.h"#include "sysLib.h"#include "asm.h"#include "config.h"#include "regs.h"		/* Exported internal functions */	FUNC_EXPORT(_romInit)		/* start of system code */	FUNC_EXPORT(romInit)		/* start of system code */	/* externals */	FUNC_IMPORT(sysGetBusSpd)	FUNC_IMPORT(sysGetDramSpd)#ifdef	INCLUDE_I2C	FUNC_IMPORT(getDIMMrefreshrate)#endif	/* INCLUDE_I2C */	FUNC_IMPORT(romStart)	/* system initialization routine */	_WRS_TEXT_SEG_START/***************************************************************************** romInit - entry point for VxWorks in ROM** SYNOPSIS* \ss* void romInit*     (*     int startType	/@ only used by 2nd entry point @/*     )* \se** INCLUDE FILES: none** RETURNS: This function does not return.** SEE ALSO:* Wind River,* .I "Tornado BSP Developer's Kit for VxWorks"**/FUNC_BEGIN(_romInit)FUNC_BEGIN(romInit)	bl	cold		bl	warm	/* copyright notice appears at beginning of ROM (in TEXT segment) */	.ascii   "Copyright 1984-1998 Wind River Systems, Inc."	.balign _PPC_TEXT_SEG_ALIGNcold:	li	r24, BOOT_COLD	bl	start		/* skip over next instruction */			warm:	or	r24, r3, r3	/* startType to r24 */start:	/* Zero-out registers: r0 & SPRGs */	xor     r0,r0,r0	mtspr   272,r0	mtspr   273,r0	mtspr   274,r0	mtspr   275,r0        /* initialize the stack pointer */        lis     sp, HI(STACK_ADRS)        ori     sp, sp, LO(STACK_ADRS)	/*	 *	Set MPU/MSR to a known state	 *	Turn on FP	 */	andi.	r3, r3, 0	ori	r3, r3, 0x2000	sync	mtmsr 	r3	isync	/* Init the floating point control/status register */	mtfsfi  7,0x0	mtfsfi  6,0x0	mtfsfi  5,0x0	mtfsfi  4,0x0	mtfsfi  3,0x0	mtfsfi  2,0x0	mtfsfi  1,0x0	mtfsfi  0,0x0	isync	/* Initialize the floating point data regsiters to a known state */	bl	ifpdr_value	.long	0x3f800000	/* 1.0 */ifpdr_value:	mfspr	r3,8	lfs	f0,0(r3)	lfs	f1,0(r3)	lfs	f2,0(r3)	lfs	f3,0(r3)	lfs	f4,0(r3)	lfs	f5,0(r3)	lfs	f6,0(r3)	lfs	f7,0(r3)	lfs	f8,0(r3)	lfs	f9,0(r3)	lfs	f10,0(r3)	lfs	f11,0(r3)	lfs	f12,0(r3)	lfs	f13,0(r3)	lfs	f14,0(r3)	lfs	f15,0(r3)	lfs	f16,0(r3)	lfs	f17,0(r3)	lfs	f18,0(r3)	lfs	f19,0(r3)	lfs	f20,0(r3)	lfs	f21,0(r3)	lfs	f22,0(r3)	lfs	f23,0(r3)	lfs	f24,0(r3)	lfs	f25,0(r3)	lfs	f26,0(r3)	lfs	f27,0(r3)	lfs	f28,0(r3)	lfs	f29,0(r3)	lfs	f30,0(r3)	lfs	f31,0(r3)	sync	/*	 *	Set MPU/MSR to a known state	 *	Turn off FP	 */	andi.	r3, r3, 0	sync	mtmsr 	r3	isync	/* Init the Segment registers */	andi.	r3, r3, 0	isync	mtsr    0,r3	isync	mtsr    1,r3	isync	mtsr    2,r3	isync	mtsr    3,r3	isync	mtsr    4,r3	isync	mtsr    5,r3	isync	mtsr    6,r3	isync	mtsr    7,r3	isync	mtsr    8,r3	isync	mtsr    9,r3	isync	mtsr    10,r3	isync	mtsr    11,r3	isync	mtsr    12,r3	isync	mtsr    13,r3	isync	mtsr    14,r3	isync	mtsr    15,r3	isync	/* Turn off the GLANCE - L2 Cache */	lis	r3, HI(SYS_REG_SXCCR_A)	ori	r3, r3, LO(SYS_REG_SXCCR_A)	addis	r4, r0, 0x0	ori	r4, r4, 0x0070	stb	r4, 0x0(r3)	/* Turn off data and instruction cache control bits */		mfspr   r3, HID0	isync	rlwinm	r4, r3, 0, 18, 15	/* r4 has ICE and DCE bits cleared */	sync	isync	mtspr	HID0, r4		/* HID0 = r4 */	isync	/* Get cpu type */	mfspr   r28, PVR	rlwinm  r28, r28, 16, 16, 31	/* invalidate the MPU's data/instruction caches */	lis	r3, 0x0	cmpli   0, 0, r28, CPU_TYPE_750	beq     CPU_IS_750	cmpli	0, 0, r28, CPU_TYPE_603	beq	CPU_IS_603	cmpli	0, 0, r28, CPU_TYPE_603E	beq	CPU_IS_603        cmpli   0, 0, r28, CPU_TYPE_603P        beq     CPU_IS_603        cmpli   0, 0, r28, CPU_TYPE_604R        bne     CPU_NOT_604RCPU_IS_604R:        lis     r3, 0x0        mtspr   HID0, r3        /* disable the caches */        isync        ori     r4, r4, 0x0002  /* disable BTAC by setting bit 30 */CPU_NOT_604R:	ori	r3, r3, 0x0C00		/* r3 has invalidate bits set */CPU_IS_603:	ori	r3, r3, 0xC000		/* r3 has enable and bits set */	or	r4, r4, r3		/* set bits */	sync	isync	mtspr   HID0, r4		/* HID0 = r4 */	andc	r4, r4, r3		/* clear bits */	isync	cmpli   0, 0, r28, CPU_TYPE_604	beq	CPU_IS_604	cmpli   0, 0, r28, CPU_TYPE_604E	beq	CPU_IS_604        cmpli   0, 0, r28, CPU_TYPE_604R        beq     CPU_IS_604        cmpli   0, 0, r28, CPU_TYPE_750        beq     CPU_IS_604	mtspr	HID0, r4	isync#ifdef USER_I_CACHE_ENABLE 	b	I_CACHE_ON_603#else	b	CACHE_ENABLE_DONE#endifCPU_IS_750:#ifdef USER_I_CACHE_ENABLE        mfspr   r3,HID0        sync        addi    r4,r0,0x0800        or      r3,r4,r3        mtspr   HID0,r3         /* set ICFI (bit 16) */        sync        andc    r3,r3,r4        mtspr   HID0,r3         /* clear ICFI (bit 16) */        sync	addi    r4,r0,0xFFFFDFFF    /* Clear ILOCK (bit 18)  */        and     r3,r3,r4         mtspr   HID0,r3        sync        ori     r3,r3,0x8000    /* Set ICE (bit 16) */	mtspr   HID0,r3        sync#endif        b       CACHE_ENABLE_DONECPU_IS_604:	lis	r5, 0x0	ori	r5, r5, 0x1000	mtspr	CTR, r5LOOP_DELAY:	nop	bdnz	LOOP_DELAY	isync	mtspr 	HID0, r4	isync	/* turn the Instruction cache ON for faster FLASH ROM boots */#ifdef USER_I_CACHE_ENABLE         ori     r4, r4, 0x8800		/* set ICE & ICFI bit */        isync                           /* Synchronize for ICE enable */	b	WRITE_R4I_CACHE_ON_603:	ori	r4, r4, 0x8800		/* set ICE & ICFI bit */        rlwinm  r3, r4, 0, 21, 19	/* clear the ICFI bit */        /*         * The setting of the instruction cache enable (ICE) bit must be         * preceded by an isync instruction to prevent the cache from being         * enabled or disabled while an instruction access is in progress.         */	isyncWRITE_R4:        mtspr   HID0, r4                /* Enable Instr Cache & Inval cache */	cmpli   0, 0, r28, CPU_TYPE_604	beq    	CACHE_ENABLE_DONE 	cmpli   0, 0, r28, CPU_TYPE_604E	beq    	CACHE_ENABLE_DONE 	cmpli   0, 0, r28, CPU_TYPE_604R	beq    	CACHE_ENABLE_DONE 	cmpli   0, 0, r28, CPU_TYPE_750	beq    	CACHE_ENABLE_DONE         mtspr   HID0, r3                /* using 2 consec instructions */                                        /* PPC603 recommendation */#endifCACHE_ENABLE_DONE:        /* Enhance execution based on cpu type */        cmpli   0, 0, r28, CPU_TYPE_603        beq     raven3        cmpli   0, 0, r28, CPU_TYPE_603E        beq     raven3        cmpli   0, 0, r28, CPU_TYPE_603P        beq     raven3        /* enable branch history table for the 604 and 750 */        mfspr   r3, HID0        ori     r3, r3, _PPC_HID0_BHTE        cmpli   0, 0, r28, CPU_TYPE_750        beq     enhanceAll        /*         * CPU is not 750 or 603x so it must be a 604x.         * Disable sequential instruction execution (go superscalar) and         * enable branch history table for the 604.         */        ori     r3, r3, _PPC_HID0_SIEDenhanceAll:        mtspr   HID0, r3/*  * Disable Raven3's Watchdog Timers. * * Note: Both of Raven3's Watchdog timers must be disabled at powerup. * Otherwise Watchdog Timer 1 will time out in 512 msec and interrupt the  * board, Watchdog Timer 2 will time out in 576 msec and reset the board. */raven3:	lis	r3,HI(RAVEN_BASE_ADRS)	ori	r3, r3, LO(RAVEN_BASE_ADRS)	isync					/* synchronize */	lbz	r4,RAVEN_MPC_REVID(r3)		/* read REVID register */	eieio					/* synchronize */	sync					/* synchronize */	cmpli	0,0,r4,0x3			/* Raven version 3 or above? */	bc	12,0,nodiswdog			/* skip if Raven2 or lower */	addis  	r4,r0,0x0000     		/* disable Watchdog Timers */	ori	r4,r4,0x0055			/* load PATTERN_1 */	isync					/* synchronize */	stb	r4, RAVEN_MPC_WDT1CNTL(r3)	/* arm Watchdog Timer 1 */	eieio					/* synchronize */	sync					/* synchronize */	addis	r4,r0,0x0000			/* load PATTERN_2 */	ori	r4,r4,0xaa0f			/* max resolution */	isync					/* synchronize */	sth	r4, RAVEN_MPC_WDT1CNTL(r3)	/* disable Timer 1 */

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲欧美日韩久久| 欧美日韩高清在线| 欧美日本国产一区| 久久噜噜亚洲综合| 亚洲高清免费在线| 不卡一卡二卡三乱码免费网站| 欧美日韩国产色站一区二区三区| 久久久不卡网国产精品二区| 三级一区在线视频先锋| 99免费精品视频| 久久精品免视看| 免费欧美在线视频| 欧美日韩一区三区四区| 亚洲精品日日夜夜| 99在线精品观看| 国产欧美视频在线观看| 美腿丝袜亚洲色图| 欧美丰满高潮xxxx喷水动漫| 伊人色综合久久天天人手人婷| 国产成人夜色高潮福利影视| 欧美xxxxx牲另类人与| 日本成人超碰在线观看| 欧美三级韩国三级日本一级| 亚洲人妖av一区二区| av在线播放一区二区三区| 国产偷国产偷精品高清尤物| 国产乱人伦偷精品视频免下载| 日韩免费看的电影| 久久国产尿小便嘘嘘| 5858s免费视频成人| 午夜天堂影视香蕉久久| 欧洲一区二区三区在线| 洋洋成人永久网站入口| 一本色道久久综合精品竹菊| 亚洲欧美日韩电影| 欧美日韩视频一区二区| 日本亚洲三级在线| 精品国产露脸精彩对白| 国产美女娇喘av呻吟久久| 久久久午夜精品| 国产99久久久国产精品潘金 | 久久久www成人免费毛片麻豆| 美女视频一区二区| 精品国产自在久精品国产| 国产一区二三区| 中文欧美字幕免费| 日本二三区不卡| 日韩经典中文字幕一区| 日韩一区二区三区高清免费看看| 美腿丝袜在线亚洲一区| 国产午夜精品久久| 91麻豆国产福利在线观看| 亚洲国产一区视频| 欧美一级二级三级蜜桃| 国产精品一区二区在线观看网站 | 成人avav在线| 亚洲激情校园春色| 日韩三级视频中文字幕| 国产一区二区女| 一区二区三区波多野结衣在线观看 | 欧美日韩国产综合一区二区| 日本伊人精品一区二区三区观看方式 | 91精品婷婷国产综合久久竹菊| 久久精品99国产精品日本| 国产欧美一区二区在线观看| 9人人澡人人爽人人精品| 五月婷婷久久丁香| 久久日一线二线三线suv| 97精品国产97久久久久久久久久久久| 亚洲3atv精品一区二区三区| 精品国产乱码久久| 在线观看一区不卡| 国产精品一区三区| 亚洲6080在线| **欧美大码日韩| 欧美一级电影网站| 91蜜桃在线免费视频| 精品在线一区二区三区| 亚洲男女毛片无遮挡| 精品捆绑美女sm三区| 色综合久久中文综合久久97| 国内精品写真在线观看| 亚洲国产一区视频| 国产精品九色蝌蚪自拍| 日韩女同互慰一区二区| 欧美日精品一区视频| 不卡av在线免费观看| 韩国成人在线视频| 日日夜夜免费精品视频| 国产精品高潮呻吟| 久久综合九色综合97婷婷| 欧美日韩高清一区二区三区| 成人av网站在线观看免费| 久久99精品久久久久婷婷| 午夜电影一区二区| 亚洲日本欧美天堂| 国产精品欧美久久久久一区二区 | 奇米影视一区二区三区| 樱花影视一区二区| 日韩久久一区二区| 欧美国产日韩一二三区| 精品1区2区在线观看| 欧美一三区三区四区免费在线看| 色嗨嗨av一区二区三区| 波多野结衣亚洲| 成人一区二区在线观看| 九九久久精品视频| 狠狠色丁香九九婷婷综合五月| 日韩精品电影一区亚洲| 视频在线在亚洲| 午夜精彩视频在线观看不卡| 午夜精品久久久| 午夜精品一区在线观看| 一区二区三区不卡在线观看 | 精品亚洲成a人| 奇米色一区二区三区四区| 午夜伊人狠狠久久| 天天综合日日夜夜精品| 日韩和欧美一区二区| 日本成人在线电影网| 久久精品国产精品亚洲综合| 毛片av一区二区| 国模娜娜一区二区三区| 国产乱码一区二区三区| 国产91在线观看| 色视频一区二区| 在线播放日韩导航| 精品久久久久久久久久久院品网| 久久综合国产精品| 中文字幕亚洲区| 亚洲国产成人精品视频| 六月丁香婷婷久久| 国产精品一区在线| 成人av资源网站| 欧美性欧美巨大黑白大战| 日韩午夜在线观看视频| 久久久久高清精品| 亚洲欧美另类图片小说| 日韩精品一二区| 国产一区二区精品久久91| av午夜精品一区二区三区| 欧美日韩一区成人| 欧美成人女星排行榜| 国产精品久久久久久久久免费桃花 | 欧美激情一区在线| 亚洲精品免费在线播放| 日韩黄色片在线观看| 国产成人精品网址| 欧美在线|欧美| 久久影院视频免费| 一区二区三区加勒比av| 久久99久久99精品免视看婷婷 | 亚洲视频一区二区免费在线观看| 国产精品久久久久一区二区三区共 | 久久精品综合网| 一区二区三区影院| 黑人巨大精品欧美一区| 97久久超碰国产精品电影| 欧美日韩另类一区| 久久精品在这里| 亚洲va欧美va国产va天堂影院| 国产九色精品成人porny| 欧美这里有精品| 久久久国产午夜精品| 亚洲chinese男男1069| 成人三级在线视频| 69堂精品视频| 伊人开心综合网| 国产成人精品免费在线| 欧美一区二区日韩一区二区| 亚洲蜜臀av乱码久久精品| 国产资源在线一区| 欧美一区中文字幕| 亚洲一区二区免费视频| 成人av在线电影| 久久精品亚洲国产奇米99| 奇米影视一区二区三区| 欧美日韩国产精品成人| 日韩毛片视频在线看| 国产精品一区在线| 精品国产a毛片| 免费成人在线视频观看| 欧美日韩高清一区| 一区二区三区欧美亚洲| 91丝袜美女网| 国产精品久久久久久久蜜臀| 国产另类ts人妖一区二区| 精品久久久影院| 久久av资源网| 精品少妇一区二区三区免费观看| 水蜜桃久久夜色精品一区的特点| 欧美三级中文字幕在线观看| 亚洲人成人一区二区在线观看| eeuss影院一区二区三区| 中文字幕av一区二区三区| 成人一区在线观看| 中文字幕亚洲一区二区av在线| 99国产精品视频免费观看| 国产精品久久久久影院老司| 粉嫩嫩av羞羞动漫久久久|