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

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

?? sysalib.s

?? VXWORKS BSP開發包,初始化 驅動文件
?? S
?? 第 1 頁 / 共 2 頁
字號:
/* sysALib.s - iq80310 system-dependent routines *//* Copyright 1996-1997 Wind River Systems, Inc. *//*modification history--------------------01l,18oct01,jb  Enabling removal of pre-pended underscores for new compilers                 (Diab/Gnu elf)01k,26jul01,scm  add routine to dump translation table base register...01j,16may01,jb  Removing FIQ support01i,15may01,jb  Adding limited FIQ support01h,14apr01,scm  add sysICUReadINTSRC - Read the INTSRC register01g,22mar01,scm  change hex display of auto memsize to reflect 2 bank simms...01f,21mar01,scm  SDRAM aut size mods...01e,20mar01,scm  correct SBR1 mask...01d,20mar01,scm  add hex display to show autosized mem...01c,28feb01,scm  remove "sysChangeTransTableBase" reference -not used...01b,22nov00,scm  correct sysInit for bootrom startup01a,11jul00,sut  written.*//*DESCRIPTIONThis module contains system-dependent routines written in assemblylanguage.This module must be the first specified in the \f3ld\f1 command used tobuild the system.  The sysInit() routine is the system start-up code.INTERNALMany routines in this module doesn't use the "c" frame pointer %r11@ !This is only for the benefit of the stacktrace facility to allow it to properly trace tasks executing within these routines.SEE ALSO: .I "ARM Architecture Reference Manual"*/#define _ASMLANGUAGE		#include "vxWorks.h"#include "regs.h"#include "arch/arm/arm.h"#include "arch/arm/mmuArmLib.h"#include "arch/arm/excArmLib.h"#include "sysLib.h"#include "config.h"        .data        .globl   VAR(copyright_wind_river)        .long    VAR(copyright_wind_river)	/* internals */	.globl	FUNC(sysInit)		/* start of system code */	.globl  FUNC(sysIntStackSplit)	.globl  FUNC(sysEnableIRQMasks)        .globl  FUNC(sysICUReadINTSRC)        .globl  FUNC(sysPhysMemSize)        .globl  FUNC(sysGetTransTblBase) 		/* externals */	.extern	FUNC(usrInit)		/* system initialization routine */	.extern	FUNC(vxSvcIntStackBase)	/* base of SVC-mode interrupt stack */	.extern	FUNC(vxSvcIntStackEnd)	/* end of SVC-mode interrupt stack */	.extern	FUNC(vxIrqIntStackBase)	/* base of IRQ-mode interrupt stack */	.extern	FUNC(vxIrqIntStackEnd)	/* end of IRQ-mode interrupt stack */	#if defined(INCLUDE_HSI_PROBE)        .globl  FUNC(probeInit)         /* start of system code */        .extern FUNC(bcopy)        .extern FUNC(bfill)/* In I80310 (Coyanosa), for various reasons the MMU has to be enabled always.- Caching Uint requires MMU- The portion of the cache is used as internal data RAM, and since cache unit  requires MMU, the MMU should be ON in order to access the internal data RAM.*/#ifdef _DIAB_TOOLMakeTransTable: .macro addr,addrSize,options,total    .if total       .if total <= 0x40           .long ((addr << addrSize) | options)           MakeTransTable (addr+1), addrSize, options, (total-1)       .else           .if total <= 0x256               MakeTransTable addr, addrSize, options, 0x40               MakeTransTable (addr+0x40), addrSize, options, (total-0x40)           .else               MakeTransTable addr, addrSize, options, 0x256               MakeTransTable (addr+0x256), addrSize, options, (total-0x256)           .endif       .endif    .endif    .endm#else /* GNU */.MACRO MakeTransTable addr=0,addrSize=0,options=0,total=0.if \total   .if \total <= 0x40       .long ((\addr << \addrSize) | \options)       MakeTransTable "(\addr+1)", \addrSize, \options, "(\total-1)"   .else       .if \total <= 0x256           MakeTransTable \addr, \addrSize, \options, 0x40           MakeTransTable "(\addr+0x40)", \addrSize, \options, "(\total-0x40)"       .else           MakeTransTable \addr, \addrSize, \options, 0x256           MakeTransTable "(\addr+0x256)", \addrSize, \options, "(\total-0x256)"       .endif   .endif.endif.ENDM#endif/* Create First Level Section Descriptor */#define SectionDesc(addr, options, total) \        MakeTransTable addr, 20, options, total/* Coarse page descriptor contains 14 bits, since it is easy to manipulate * the hex values, here the addr is shifted only by 12 bits, instead of 14bits. * So make sure that bit 11 and 10 are set to correctly in  options. * Bit 11 and 10 in options should contain the 2 LSBs from the coarse page address */#define CoarsePageDesc(addr, options) \        MakeTransTable addr, 12, options, 1#define SmallPage(addr, options, total) \        MakeTransTable addr, 12, options, total        .data        .align 4_probeInitMmuTable:#if defined(SECOND_LEVEL_PAGE_TABLE)/* 1 + 2559 + 1512 + 24 = 4096 Entries *//* First Level Coarse Page: address, options */CoarsePageDesc(8, 0x00000001)            /* 1 : Coarse Entry *//* First Level Section Descriptions: address, options, total */SectionDesc(0x001, 0x00000c02, 0x9ff)    /* 2559 : ROM Entries */#else/* 2560 + 1512 + 24 = 4096 Entries */SectionDesc(0x000, 0x00000c02, 0xa00)    /* 2560 : ROM Entries */#endifSectionDesc(0xa00, 0x00001e0e, 0x200)    /* RAM Entries */SectionDesc(0xc00, 0x00001e02, 0x3e8)    /* RAM Entries */SectionDesc(0xfe8, 0x00000c02, 0x18)     /* 24 : ROM Entries *//* 0x8000 = 0x4000 + 4000 *//* second level descriptors for fine page (4K) */#if defined(SECOND_LEVEL_PAGE_TABLE)/* Extended small page table definitions: address, options, total */SmallPage(0xa0000, 0x0000007f, 0x1)  /* 1 : 4K Page for internal data RAM */SmallPage(1, 0x00000073, 0x1)        /* 255 : 4K Page  for MMRs, and ROM */SmallPage(2, 0x0000007f, 0xfe)       /* Remaning ROM */#endif        .text        .align 4/********************************************************************************* sysInit/probeInit - (standalone alone  debug version with visionProbe)*                   - start after boot** This routine is the system start-up entry point for VxWorks in RAM, the* first code executed after booting.  It disables interrupts, sets up* the stack, and jumps to the C routine usrInit() in usrConfig.c.** The initial stack is set to grow down from the address of sysInit().  This* stack is used only by usrInit() and is never used again.  Memory for the* stack must be accounted for when determining the system load address.** NOTE: This routine should not be called by the user.** RETURNS: N/A* sysInit ()              /@ THIS IS NOT A CALLABLE ROUTINE @/*/_ARM_FUNCTION(probeInit)_ARM_FUNCTION(sysInit)/* Disable Interrupts */        MRS     r1, cpsr                /* get current status */        ORR     r1, r1, #I_BIT | F_BIT  /* disable IRQ and FIQ */        MSR     cpsr, r1        mov     r0, #0                 /* Disable IRQ and FIQ Masks */        mcr     p13, 0, r0, c0, c0, 0        CPWAIT(r0)                     /* Wait *//* Interrupts Disabled */        adr     sp, FUNC(probeInit)  /* initialise stack pointer */        mov     fp, #0               /* initialise frame pointer *//******************************************************************************//******************************************************************************//*** Disable Write Buffer Coalescing ***/        mcr             p15, 0, r0, c7, c10, 4  /* Drain write/fill buffers */        CPWAIT(r0)                                              /* wait for the write to happen */        CPWAIT(r0)                                              /* wait for the write to happen */        mrc             p15, 0, r0, c1, c0, 1   /* Read Auxiliary Control Reg */        orr             r0, r0, #0x00000001     /* Disable Coalescing */        mcr             p15, 0, r0, c1, c0, 1   /* Write Auxiliary Control Reg */        CPWAIT(r0)                                              /* wait for the write to happen */        ldr             r2, =0x1042        ldr             r3, =0x3FF        strh            r3, [r2]        ldr             r2, =0x1040             /* quit PCI retries */        mov             r3, #0x08        strh            r3, [r2]/* Clear Low Memory */        ldr     r0, =LOCAL_MEM_LOCAL_ADRS        ldr     r1, =FUNC(probeInit)        sub     r1, r1, r0        sub     r1, r1, #64        mov     r2, #0        bl      FUNC(bfill)/* Copy Initial MMU Tables to Low Memory */        ldr     r0, =_probeInitMmuTable        ldr     r1, =(LOCAL_MEM_LOCAL_ADRS + MMU_TRANSLATION_BASE)        ldr     r2, =0x4400        bl      FUNC(bcopy)/* Enable Coprocessors CP0 and  CP13 access */        ldr             r0, =0x2001        mcr             p15, 0, r0, c15, c1, 0        mcr             p15, 0, r0, c7, c10, 4  /* Drain write/fill buffers */        CPWAIT(r0)                              /* wait for the write to happen *//* Invalidate I-Cache, D-Cache, and BTB */        mcr             p15, 0, r0, c7, c7, 0        CPWAIT(r0)                              /* Wait *//* Enable Instruction Cache */        mrc             p15, 0, r0, c1, c0, 0   /* Read Control Register*/        orr             r0, r0, #0x1000         /* Set I-Cache bit */        mcr             p15, 0, r0, c1, c0, 0   /* Write Back Control Register */        CPWAIT(r0)                              /* Wait *//* Set Translation Table Base */        ldr     r0, =(LOCAL_MEM_LOCAL_ADRS + MMU_TRANSLATION_BASE)        mcr     p15, 0, r0, c2, c0, 0   /* Set Translation Table Base Register */        CPWAIT(r0)                      /* Wait *//* Invalidate Instruction, Data TLBs */        mcr     p15, 0, r0, c8, c7, 0   /* Flush I & D TLBs*/        CPWAIT(r0)                      /* Wait *//* Set Domain Access Control Register */        ldr             r0, =0xffffffff         /* Set All 16 domains to manager access */        mcr             p15, 0, r0, c3, c0, 0   /* Set Domain Permissions *//* Enable MMU */        mrc             p15, 0, r0, c1, c0, 0   /* Read Control Register */        orr             r0, r0, #0x00000001     /* Enable MMU */        mcr             p15, 0, r0, c1, c0, 0   /* Write Back the Control Register */        CPWAIT(r0)                                                      /* Wait *//* Drain Write/Fill Buffers */        mcr     p15, 0, r0, c7, c10, 4  /* Drain */        CPWAIT(r0)                      /* Wait *//* Enable Data Cache */        mrc             p15, 0, r0, c1, c0, 0   /* Read Control Reg */        orr             r0, r0, #0x00000004             /* Enable Data Cache */        mcr             p15, 0, r0, c1, c0, 0   /* Write Back */        CPWAIT(r0)                                                      /* Wait *//* Enable Branch Target Buffer */        mrc             p15, 0, r0, c1, c0, 0   /* Read Control Reg */        orr             r0, r0, #0x00000800             /* Enable BTB */        mcr             p15, 0, r0, c1, c0, 0   /* Write Back the Control Reg */        CPWAIT(r0)                                                      /* Wait *//******************************************************************************//******************************************************************************/        mov     r0, #BOOT_CLEAR /* pass startType *//* now call usrInit */        b       FUNC(usrInit)#else /* ! INCLUDE_HSI_PROBE */	.text	.align 4/********************************************************************************* sysInit - start after boot

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
蜜桃91丨九色丨蝌蚪91桃色| 91精品国产色综合久久 | 裸体健美xxxx欧美裸体表演| 国产精品美女久久久久久久久久久 | 国产91露脸合集magnet| 麻豆精品国产传媒mv男同| 日产国产欧美视频一区精品| 肉丝袜脚交视频一区二区| 亚洲sss视频在线视频| 亚洲国产sm捆绑调教视频 | 午夜影院久久久| 亚洲成年人影院| 日韩精品免费专区| 免费观看久久久4p| 精品夜夜嗨av一区二区三区| 黄色成人免费在线| 国产 日韩 欧美大片| 国产乱子轮精品视频| 国产一区二区不卡老阿姨| 国产v综合v亚洲欧| 99在线精品视频| 色爱区综合激月婷婷| 欧美日韩成人一区| 欧美成人乱码一区二区三区| 久久先锋资源网| 亚洲国产成人私人影院tom| 亚洲丝袜美腿综合| 亚洲图片自拍偷拍| 婷婷综合另类小说色区| 国产在线观看免费一区| 高清成人免费视频| 色先锋aa成人| 91精品国产全国免费观看| 精品三级在线观看| 国产精品无码永久免费888| 成人免费在线视频| 日韩av高清在线观看| 国产一区二三区好的| 成人黄色在线网站| 欧美日韩你懂的| 久久久久9999亚洲精品| 亚洲品质自拍视频网站| 日本欧美在线观看| 国产福利一区二区三区在线视频| 一本一道波多野结衣一区二区 | 伊人性伊人情综合网| 三级欧美韩日大片在线看| 国内精品视频666| 99久久综合99久久综合网站| 91精品蜜臀在线一区尤物| 久久久久国产成人精品亚洲午夜| 亚洲色图欧美偷拍| 免费欧美在线视频| 成人av电影观看| 69精品人人人人| 中文字幕日韩一区| 蜜臀av在线播放一区二区三区| 丁香六月综合激情| 69堂亚洲精品首页| 亚洲欧美日韩一区二区| 久久精品久久精品| 色婷婷av一区二区三区大白胸 | 久久久一区二区| 亚洲在线观看免费视频| 国产在线乱码一区二区三区| 色综合久久66| 久久久久国产精品麻豆ai换脸| 日韩电影在线观看网站| 国产成人免费网站| 欧美精品在线一区二区| 中文字幕一区二区日韩精品绯色| 伦理电影国产精品| 日本道色综合久久| 欧美国产精品v| 久久国产福利国产秒拍| 欧美写真视频网站| 18成人在线观看| 国产福利91精品一区二区三区| 欧美精品免费视频| 亚洲精品中文在线观看| 国产aⅴ精品一区二区三区色成熟| 欧美顶级少妇做爰| 一区二区三区四区乱视频| 国产69精品久久久久777| 精品少妇一区二区三区在线播放| 亚洲成精国产精品女| 91在线观看视频| 国产精品久线观看视频| 国产一区二区三区国产| 欧美一级生活片| 午夜私人影院久久久久| 欧美性高清videossexo| 亚洲品质自拍视频| 不卡av在线网| 国产三级三级三级精品8ⅰ区| 久久爱www久久做| 日韩写真欧美这视频| 日韩影院在线观看| 欧美日韩一级二级三级| 亚洲国产精品天堂| 欧美视频一区二区三区| 亚洲国产乱码最新视频| 欧美午夜电影在线播放| 一区二区在线观看免费| 色综合久久综合中文综合网| 国产精品久久久久久妇女6080| 成人国产精品免费观看视频| 国产欧美综合色| 国产91综合网| 中文字幕在线不卡一区二区三区| 成人av电影免费在线播放| 中文子幕无线码一区tr| 99国产麻豆精品| 最新中文字幕一区二区三区| 91丨九色丨蝌蚪丨老版| 亚洲精品中文字幕乱码三区| 在线观看日产精品| 日韩电影在线观看网站| 日韩精品一区二区三区中文精品| 看片网站欧美日韩| 精品国产成人系列| 国产高清在线精品| 国产精品免费av| 色婷婷综合在线| 亚洲亚洲人成综合网络| 欧美一区二区三区小说| 久久精品国产成人一区二区三区 | 精品久久久久久久久久久久久久久 | 欧美精品一区二区三区高清aⅴ| 国产在线视频不卡二| 国产精品拍天天在线| 91麻豆精东视频| 亚洲国产一区二区视频| 日韩午夜av电影| 粉嫩蜜臀av国产精品网站| 成人欧美一区二区三区白人 | 一区二区欧美在线观看| 欧美久久久久久久久| 国产在线一区二区| 中文字幕字幕中文在线中不卡视频| 在线中文字幕一区| 麻豆91在线播放免费| 久久久久国产免费免费| 色综合久久久网| 日本成人在线电影网| 久久九九久久九九| 日本精品一区二区三区高清 | 亚洲一二三区视频在线观看| 日韩精品中文字幕在线不卡尤物 | 国产一区 二区 三区一级| 国产精品免费丝袜| 欧美精品一二三四| 国产福利精品一区| 夜夜精品视频一区二区 | 日本一区二区三级电影在线观看| 日本精品裸体写真集在线观看 | 欧美精品v国产精品v日韩精品 | 欧美肥大bbwbbw高潮| 成人丝袜18视频在线观看| 天堂资源在线中文精品| 国产清纯白嫩初高生在线观看91| 一本到不卡精品视频在线观看| 麻豆精品久久久| 亚洲乱码国产乱码精品精的特点| 91精品国产综合久久久久| 成人涩涩免费视频| 毛片不卡一区二区| 亚洲欧美日韩国产手机在线 | 91国偷自产一区二区开放时间| 久久9热精品视频| 亚洲午夜久久久久久久久电影院| 久久香蕉国产线看观看99| 欧美色图在线观看| 97精品久久久午夜一区二区三区| 麻豆国产91在线播放| 午夜久久福利影院| 中文字幕一区视频| 日韩视频在线你懂得| 色8久久人人97超碰香蕉987| 国产不卡免费视频| 青草av.久久免费一区| 亚洲色图丝袜美腿| 国产日产欧美一区| 日韩小视频在线观看专区| 欧美午夜寂寞影院| www.欧美日韩国产在线| 国产一区二区精品久久| 男女男精品视频| 爽爽淫人综合网网站 | 91免费观看国产| 国内精品第一页| 免费在线成人网| 免费在线观看日韩欧美| 久久精品99国产精品日本| 午夜视频在线观看一区二区三区| 亚洲欧美偷拍卡通变态| 国产网站一区二区三区| 色呦呦日韩精品| 午夜精品福利一区二区蜜股av| 国产成人在线免费观看|