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

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

?? syslib.c

?? vxwork arm920 bsp開發包
?? C
?? 第 1 頁 / 共 3 頁
字號:
    *(UINT16 *)(V3_BASE + V3_LB_MAP1) =    			(((INTEGRATOR_PCI_BASE + SZ_256M) >> 20) << 4) | 0x0006;    /*     * Allow accesses to PCI Configuration space     * and set up A1, A0 for type 1 config cycles     */    *(UINT16 *)(V3_BASE + V3_PCI_CFG) = ((*(UINT16 *)(V3_BASE + V3_PCI_CFG)) &			   ~(V3_PCI_CFG_M_RETRY_EN | V3_PCI_CFG_M_AD_LOW1) ) |			   V3_PCI_CFG_M_AD_LOW0;    /* now we can allow in PCI MEMORY accesses */    *(UINT16 *)(V3_BASE + V3_PCI_CMD) =		    (*(UINT16 *)(V3_BASE + V3_PCI_CMD)) | V3_COMMAND_M_MEM_EN;    /*     * Set RST_OUT to take the PCI bus is out of reset, PCI devices can     * initialise and lock the V3 system register so that no one else     * can play with it     */   *(UINT16 *)(V3_BASE + V3_SYSTEM) =		    (*(UINT16 *)(V3_BASE + V3_SYSTEM)) | V3_SYSTEM_M_RST_OUT;   *(UINT16 *)(V3_BASE + V3_SYSTEM) =   			(*(UINT16 *)(V3_BASE + V3_SYSTEM)) | V3_SYSTEM_M_LOCK;    return;    }#endif /* defined(INCLUDE_PCI) *//********************************************************************************* sysHwInit - initialize the CPU board hardware** This routine initializes various features of the hardware.* Normally, it is called from usrInit() in usrConfig.c.** NOTE: This routine should not be called directly by the user.** RETURNS: N/A*/void sysHwInit (void)    {    /* install the IRQ/SVC interrupt stack splitting routine */    _func_armIntStackSplit = sysIntStackSplit;#if defined(INCLUDE_PCI)    /* Initialise the V3 PCI bridge controller */    sysV3Init();    /*  Initialise PCI driver library. */    if (pciIomapLibInit (PCI_MECHANISM_3, CPU_PCI_CNFG_ADRS,    			 CPU_PCI_CNFG_ADRS, 0) != OK)	sysToMonitor (BOOT_NO_AUTOBOOT);#endif  /* INCLUDE_PCI */#ifdef INCLUDE_SERIAL    /* initialise the serial devices */    sysSerialHwInit ();      /* initialise serial data structure */#endif /* INCLUDE_SERIAL */    }/********************************************************************************* sysHwInit2 - additional system configuration and initialization** This routine connects system interrupts and does any additional* configuration necessary.  Note that this is called from* sysClkConnect() in the timer driver.** RETURNS: N/A**/void sysHwInit2 (void)    {    static BOOL initialised = FALSE;    if (initialised)    	return;    /* initialise the interrupt library and interrupt driver */    intLibInit (AMBA_INT_NUM_LEVELS, AMBA_INT_NUM_LEVELS, INT_MODE);    ambaIntDevInit();    /* connect sys clock interrupt and auxiliary clock interrupt */    (void)intConnect (INUM_TO_IVEC (SYS_TIMER_INT_VEC), sysClkInt, 0);    (void)intConnect (INUM_TO_IVEC (AUX_TIMER_INT_VEC), sysAuxClkInt, 0);#ifdef INCLUDE_SERIAL    /* connect serial interrupt */    sysSerialHwInit2();#endif /* INCLUDE_SERIAL */#if defined (INCLUDE_PCI)#if defined (INCLUDE_DEC21X40END) || defined (INCLUDE_FEI82557END)    /* map all appropriate Ethernet PCI device memory and I/O addresses */    sysLanPciInit ();#endif  /* INCLUDE_DEC21X40END/FEI82557END */#if defined (INCLUDE_USB)    /* Low level init for usb */    sysUsbPciInit();#endif#endif  /* INCLUDE_PCI */    initialised = TRUE;    }/********************************************************************************* sysPhysMemTop - get the address of the top of physical memory** This routine returns the address of the first missing byte of memory,* which indicates the top of memory.** Normally, the user specifies the amount of physical memory with the* macro LOCAL_MEM_SIZE in config.h.  BSPs that support run-time* memory sizing do so only if the macro LOCAL_MEM_AUTOSIZE is defined.* If not defined, then LOCAL_MEM_SIZE is assumed to be, and must be, the* true size of physical memory.** NOTE: Do no adjust LOCAL_MEM_SIZE to reserve memory for application* use.  See sysMemTop() for more information on reserving memory.** RETURNS: The address of the top of physical memory.** SEE ALSO: sysMemTop()*/char * sysPhysMemTop (void)    {    static char * physTop = NULL;    if (physTop == NULL)	{#ifdef LOCAL_MEM_AUTOSIZE	/* If auto-sizing is possible, this would be the spot.  */#	error   "Dynamic memory sizing not supported"#else	/* Don't do autosizing, if size is given */	physTop = (char *)(LOCAL_MEM_LOCAL_ADRS + LOCAL_MEM_SIZE);#endif /* LOCAL_MEM_AUTOSIZE */	}    return physTop;    }/********************************************************************************* sysMemTop - get the address of the top of VxWorks memory** This routine returns a pointer to the first byte of memory not* controlled or used by VxWorks.** The user can reserve memory space by defining the macro USER_RESERVED_MEM* in config.h.  This routine returns the address of the reserved memory* area.  The value of USER_RESERVED_MEM is in bytes.** RETURNS: The address of the top of VxWorks memory.*/char * sysMemTop (void)    {    static char * memTop = NULL;    if (memTop == NULL)	{	memTop = sysPhysMemTop () - USER_RESERVED_MEM;	}    return memTop;    }/********************************************************************************* sysToMonitor - transfer control to the ROM monitor** This routine transfers control to the ROM monitor.  It is usually called* only by reboot() -- which services ^X -- and bus errors at interrupt* level.  However, in some circumstances, the user may wish to introduce a* new <startType> to enable special boot ROM facilities.** RETURNS: Does not return.*/STATUS sysToMonitor    (    int startType	/* passed to ROM to tell it how to boot */    )    {    FUNCPTR	pRom;    UINT32 *	p = (UINT32 *)ROM_TEXT_ADRS;#ifdef INCLUDE_SERIAL    sysSerialReset ();	/* put serial devices into quiet state */#endif    /*     * Examine ROM - if it's a VxWorks boot ROM, jump to the warm boot entry     * point; otherwise jump to the start of the ROM.     * A VxWorks boot ROM begins     *    MOV	R0,#BOOT_COLD     *    B	...     *    DCB	"Copyright"     * We check the first and third words only. This could be tightened up     * if required (see romInit.s).     */    if (p[0] == 0xE3A00002 && p[2] == 0x79706F43)	pRom = (FUNCPTR)(ROM_TEXT_ADRS + 4);	/* warm boot address */    else	pRom = (FUNCPTR)ROM_TEXT_ADRS;		/* start of ROM */#if defined(CPU_720T)  || defined(CPU_720T_T) || \    defined(CPU_740T)  || defined(CPU_740T_T) || \    defined(CPU_920T)  || defined(CPU_920T_T) || \    defined(CPU_940T)  || defined(CPU_940T_T) || \    defined(CPU_946ES) || defined(CPU_946ES_T)    VM_ENABLE(FALSE);	/* disable the MMU, cache(s) and write-buffer */#endif#if defined(CPU_920T) || defined(CPU_920T_T)    /*     * On 920T, can have the I-cache enabled once the MMU has been     * disabled, so, unlike the other processors, disabling the MMU does     * not disable the I-cache.  This would not be a problem, as the     * 920T boot ROM initialisation code disables and flushes both caches.     * However, in case we are, in fact, using a 7TDMI boot ROM,     * disable and flush the I-cache here, or else the boot process may     * fail.     */    cacheDisable (INSTRUCTION_CACHE);#endif /* defined(CPU_920T/920T_T) */    (*pRom)(startType);	/* jump to boot ROM */    return OK;		/* in case we ever continue from ROM monitor */    }/****************************************************************************** sysProcNumGet - get the processor number** This routine returns the processor number for the CPU board, which is* set with sysProcNumSet().** RETURNS: The processor number for the CPU board.** SEE ALSO: sysProcNumSet()*/int sysProcNumGet (void)    {    return 0;    }/****************************************************************************** sysProcNumSet - set the processor number** Set the processor number for the CPU board.  Processor numbers should be* unique on a single backplane.** NOTE* By convention, only processor 0 should dual-port its memory.** RETURNS: N/A** SEE ALSO: sysProcNumGet()*/void sysProcNumSet    (    int procNum		/* processor number */    )    {    sysProcNum = procNum;    }/******************************************************************************** sysLedsReadWrite - read/write the state of the LEDs on the board** This routine can be used to read and write the state of the four LEDs* on the board. The current state is ANDed and EORed with the supplied* parameters. Bits 0..3 control LEDs 0..3. A 1 switches the LED on; a 0 off.** RETURNS: previous state of LEDs.*/int sysLedsReadWrite    (    int and,    int eor    )    {    UINT32	 	current, previous;    int			oldLevel;    oldLevel = intLock();    /* read current value from hardware and mask off undefined bits */    current = *((volatile UINT32 *)LED_LIGHTS) & LED_LEDS_MASK;    previous = current;    current = (current & and) ^ eor;    /* wait for display status to be idle */    while (*((volatile UINT32 *)LED_ALPHA) & LED_STATUS)	;    /* set new value */    *((volatile UINT32 *)LED_LIGHTS) = current;    intUnlock (oldLevel);    return previous;    }#ifdef INCLUDE_FLASH/******************************************************************************** sysFlashWriteEnable - enable write access to the Flash memory** This routine is used by flashMem.c to enable write access to the* Flash memory.** RETURNS: N/A*/void sysFlashWriteEnable (void)     {     volatile UINT32 * ebiCsr = (volatile UINT32 *)INTEGRATOR_EBI_CSR1;     /* allow write access to EBI_CSR1 area (Flash ) */     *ebiCsr |= INTEGRATOR_EBI_WRITE_ENABLE;     if (!(*ebiCsr & INTEGRATOR_EBI_WRITE_ENABLE))	 {	 *(volatile UINT32 *)INTEGRATOR_EBI_LOCK = 0xA05F;	 *ebiCsr |= INTEGRATOR_EBI_WRITE_ENABLE;	 *(volatile UINT32 *)INTEGRATOR_EBI_LOCK = 0;	 }     /* Enable Vpp and allow write access to Flash in system controller */     *(volatile UINT32 *)INTEGRATOR_SC_CTRLS = FL_SC_CONTROL;     }/******************************************************************************** sysFlashWriteDisable - disable write access to the Flash memory** This routine is used by flashMem.c to disable write access to the* Flash memory.** RETURNS: N/A*/void sysFlashWriteDisable (void)     {     volatile UINT32 * ebiCsr = (volatile UINT32 *)INTEGRATOR_EBI_CSR1;     /* disable write access to EBI_CSR1 area (Flash ) */     *ebiCsr &= ~INTEGRATOR_EBI_WRITE_ENABLE;     if (*ebiCsr & INTEGRATOR_EBI_WRITE_ENABLE)	 {	 *(volatile UINT32 *)INTEGRATOR_EBI_LOCK = 0xA05F;	 *ebiCsr &= ~INTEGRATOR_EBI_WRITE_ENABLE;	 *(volatile UINT32 *)INTEGRATOR_EBI_LOCK = 0;	 }     /* Disable Vpp and disable write access to Flash in system controller */     *(volatile UINT32 *)INTEGRATOR_SC_CTRLS = 0;     }#endif /* INCLUDE_FLASH */

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品三级在线看| 一区二区成人在线| 性做久久久久久| 国产一区二区免费视频| 欧美亚洲一区二区三区四区| 国产色产综合色产在线视频| 石原莉奈一区二区三区在线观看| av中文一区二区三区| 精品国产网站在线观看| 午夜精品久久久久久久99水蜜桃 | 99免费精品在线观看| 日韩欧美亚洲国产精品字幕久久久| 亚洲免费观看在线视频| 国产91丝袜在线播放0| 日韩欧美www| 亚洲v中文字幕| 欧美体内she精高潮| 国产精品视频免费看| 国产精品香蕉一区二区三区| 777a∨成人精品桃花网| 亚洲国产欧美日韩另类综合| eeuss鲁一区二区三区| 久久久91精品国产一区二区精品| 久久国产生活片100| 日韩一区二区三区视频在线观看| 亚洲国产美女搞黄色| 欧美视频日韩视频| 亚洲综合丁香婷婷六月香| 日本韩国一区二区三区| 国产精品无码永久免费888| 国产激情精品久久久第一区二区 | 久久99国产精品久久99| 日韩欧美的一区| 久久99精品久久久久久动态图| 91精品国产综合久久福利软件| 日韩在线a电影| 日韩一区二区三区视频在线观看| 日韩电影在线一区| 精品国产污污免费网站入口 | 99精品欧美一区二区三区综合在线| 久久久久久久久久久99999| 国产一区二区按摩在线观看| 国产日韩v精品一区二区| 高清成人免费视频| 中文字幕视频一区| 欧美日韩精品一区二区三区四区| 亚洲第一福利一区| 欧美成人a视频| 国产不卡视频在线播放| 亚洲人成亚洲人成在线观看图片 | 色综合中文综合网| 欧美另类高清zo欧美| 偷拍日韩校园综合在线| 日韩一区二区三区免费看 | 久久青草国产手机看片福利盒子 | 激情文学综合网| 欧美国产在线观看| 欧美私模裸体表演在线观看| 日韩中文字幕亚洲一区二区va在线| 欧美一级夜夜爽| 国产999精品久久久久久绿帽| 国产精品成人在线观看| 欧美日韩免费在线视频| 国产麻豆精品在线观看| 亚洲精品中文在线| 日韩欧美一级精品久久| 91小宝寻花一区二区三区| 亚洲成a人在线观看| 国产亚洲欧洲997久久综合| 在线看日本不卡| 国产乱人伦偷精品视频不卡| 亚洲色图欧美在线| 久久一夜天堂av一区二区三区| 97aⅴ精品视频一二三区| 美女脱光内衣内裤视频久久影院| 国产精品美女久久久久久久久久久 | 国产精品一区二区在线观看网站| 一区二区不卡在线播放 | 日韩精品综合一本久道在线视频| 福利视频网站一区二区三区| 亚洲国产精品久久久久婷婷884 | 日韩国产欧美一区二区三区| 中文字幕日本乱码精品影院| 欧美大片在线观看一区二区| 91成人免费在线视频| 高清成人免费视频| 久久精品免费观看| 日韩精品一二三四| 日韩理论片一区二区| 久久久精品综合| 欧美videos中文字幕| 欧美老肥妇做.爰bbww| 99r国产精品| 成人午夜大片免费观看| 蜜桃视频在线观看一区| 亚洲成人1区2区| 一区二区在线观看免费视频播放| 国产午夜三级一区二区三| 欧美成人女星排行榜| 91.com视频| 欧美日本在线一区| 欧美网站一区二区| 色女孩综合影院| 97精品国产露脸对白| 成人免费av在线| 成人免费黄色大片| 国产激情一区二区三区| 国产成人综合在线观看| 国产乱对白刺激视频不卡| 极品少妇xxxx偷拍精品少妇| 久久99精品久久久久久久久久久久 | 欧美一级二级三级蜜桃| 正在播放亚洲一区| 777色狠狠一区二区三区| 555www色欧美视频| 正在播放亚洲一区| 精品乱码亚洲一区二区不卡| 日韩精品中文字幕在线不卡尤物| 日韩欧美一级精品久久| 亚洲精品在线观看视频| 国产视频在线观看一区二区三区| 久久综合精品国产一区二区三区| 欧美变态tickle挠乳网站| 精品久久国产老人久久综合| xfplay精品久久| 国产精品女同互慰在线看| 亚洲色欲色欲www| 亚洲国产精品久久人人爱| 日本一道高清亚洲日美韩| 美女久久久精品| 国产成人综合在线播放| 一本到不卡免费一区二区| 欧美在线短视频| 精品国产一区二区亚洲人成毛片| 精品久久久久香蕉网| 中文无字幕一区二区三区| 亚洲欧美另类久久久精品2019| 亚洲第一精品在线| 国产精品一区二区免费不卡| www.欧美色图| 欧美精品乱码久久久久久| 欧美成人猛片aaaaaaa| 亚洲国产精品二十页| 亚洲一区二区三区视频在线播放 | 风间由美中文字幕在线看视频国产欧美| 成人激情动漫在线观看| 欧美日韩亚洲国产综合| 欧美成人激情免费网| 综合久久国产九一剧情麻豆| 日韩综合在线视频| 成人在线视频一区二区| 欧美日本在线播放| 国产欧美日韩亚州综合 | 一区二区三区在线播| 麻豆免费精品视频| 成人av在线影院| 欧美一区二区三区影视| 亚洲天堂成人网| 国产精品自拍网站| 欧美日韩一区高清| 欧美国产乱子伦| 日本在线播放一区二区三区| 99久久久久久| 久久丝袜美腿综合| 午夜激情一区二区三区| 9l国产精品久久久久麻豆| 欧美成人精品1314www| 亚洲福利一区二区三区| 成人av电影在线| 久久久五月婷婷| 日本一区中文字幕| 日本高清免费不卡视频| 国产欧美一区二区三区在线老狼| 五月天一区二区| 色婷婷激情综合| 日韩一区中文字幕| 国产精华液一区二区三区| 欧美一区二区网站| 亚洲成人av电影| 欧美亚州韩日在线看免费版国语版| 国产日韩v精品一区二区| 蜜桃视频在线观看一区| 欧美日精品一区视频| 久久久精品国产免费观看同学| 五月天激情小说综合| 欧美在线视频全部完| 樱花影视一区二区| 99久久婷婷国产综合精品| 国产精品久久夜| 成人黄色一级视频| 中文字幕免费一区| 国产成人超碰人人澡人人澡| 精品国产精品一区二区夜夜嗨 | 一区二区三区在线观看欧美| 不卡影院免费观看| 国产精品久久久久久久久快鸭| 国产寡妇亲子伦一区二区| 精品国产乱码久久久久久影片| 老鸭窝一区二区久久精品| 精品日韩一区二区|