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

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

?? sysalib.s

?? tornado開發 三星s3c44b0x開發板 bsp
?? S
字號:
/* sysALib.s - Samsung SBC ARM7 system-dependent routines *//* Copyright 2004-2005 Amine@263.net *//* Copyright 1984-2001 Wind River Systems, Inc. *//*modification history--------------------01o,28jul04,a_m  BSP定制 for 思創S3C44B0X黃金開發板01d,18oct01,jb  Removing pre-pended underscores for new compilers (Diab/Gnu                 elf)01c,26apr01,m_h  fix thumb mode01b,26apr01,m_h  convert tabs to spaces for readability01a,12apr01,m_h  created from snds100 template.*//*DESCRIPTIONThis module contains system-dependent routines written in assemblylanguage.  It contains the entry code, sysInit(), for VxWorks imagesthat start running from RAM, such as 'vxWorks'.  These images areloaded into memory by some external program (e.g., a boot ROM) and thenstarted.  The routine sysInit() must come first in the text segment.Its job is to perform the minimal setup needed to call the generic Croutine usrInit().sysInit() masks interrupts in the processor and the interruptcontroller and sets the initial stack pointer.  Other hardware anddevice initialisation is performed later in the sysHwInit routine insysLib.c.NOTEThe routines in this module don't use the "C" frame pointer %r11@ ! orestablish a stack frame.SEE ALSO:.I "ARM Architecture Reference Manual,".I "Samsung KS32C50100 Microcontroller User's Manual,".I "Samsung KS32C5000(A)/50100 Microcontroller Application Notes."*/#define _ASMLANGUAGE#include "vxWorks.h"#include "arch/arm/arm.h"#include "regs.h"#include "sysLib.h"#include "config.h"#include "wrSbcArm7.h"    .data    .globl  FUNC(copyright_wind_river)    .long   FUNC(copyright_wind_river)/* internals */    .globl    FUNC(sysInit)        /* start of system code */    .globl    FUNC(sysIntStackSplit)    /* routine to split interrupt stack *//* 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 */    .text    .balign 4/********************************************************************************* sysInit - 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(sysInit)#ifdef  INCLUDE_VWARE_LAUNCH    LDR    r2, =sysPrivateVwareParams    STR    r1, [r2]    LDR    r2, =sysPrivateVwareParams + 0x04    STR    r0, [r2]#endif /* INCLUDE_VWARE_LAUNCH */    /* Amine: added */    LDR    r2, L$_SbcArm7Intmsk		/*all interrupt disable*/    MOV    r1, #0x07ffffff    STR    r1, [r2]#if 0 /* Amine: deleted */    /* disable interrupts and force SVC32 mode, just like reset */    MRS    r1, cpsr    BIC    r1, r1, #MASK_MODE    ORR    r1, r1, #MODE_SVC32 | I_BIT | F_BIT    MSR    cpsr, r1    /*     * CPU INTERRUPTS DISABLED     *     * disable individual interrupts in the interrupt controller     */    LDR    r2, L$_SbcArm7Intmsk            /* R2->interrupt controller */    MVN    r1, #0                /* &FFFFFFFF */    STR    r1, [r2]            /* disable all interrupt soucres */#endif    /* set initial stack pointer so stack grows down from start of code */    LDR    sp, L$_STACK_ADDR    MOV    fp, #0            /* zero frame pointer */   /* Call C_Entry application routine with a pointer to the first */   /* available memory address after ther compiler's global data */   /* This memory may be used by the application. */    /* now call usrInit */    MOV    fp, #0            /* initialize frame pointer */    MOV    r0, #BOOT_WARM_AUTOBOOT    /* pass startType */#if    (CPU == ARMARCH4_T)    LDR    r12, L$_usrInit    BX     r12#else    B     FUNC(usrInit)#endif    /* (CPU == ARMARCH4_T) *//********************************************************************************* sysIntStackSplit - split interrupt stack and set interrupt stack pointers** This routine is called, via a function pointer, during kernel* initialisation.  It splits the allocated interrupt stack into IRQ and* SVC-mode stacks and sets the processor's IRQ stack pointer. Note that* the pointer passed points to the bottom of the stack allocated i.e.* highest address+1.** IRQ stack needs 6 words per nested interrupt;* SVC-mode will need a good deal more for the C interrupt handlers.* For now, use ratio 1:7 with any excess allocated to the SVC-mode stack* at the lowest address.** Note that FIQ is not handled by VxWorks so no stack is allocated for it.** The stacks and the variables that describe them look like this.* .CS**         - HIGH MEMORY -*     ------------------------ <--- vxIrqIntStackBase (r0 on entry)*     |                      |*     |       IRQ-mode       |*     |    interrupt stack   |*     |                      |*     ------------------------ <--{ vxIrqIntStackEnd*     |                      |    { vxSvcIntStackBase*     |       SVC-mode       |*     |    interrupt stack   |*     |                      |*     ------------------------ <--- vxSvcIntStackEnd*         - LOW  MEMORY -* .CE** NOTE: This routine should not be called by the user.* void sysIntStackSplit*     (*     char *pBotStack   /@ pointer to bottom of interrupt stack @/*     long size        /@ size of stack @/*     )*/_ARM_FUNCTION_CALLED_FROM_C(sysIntStackSplit)    /*     * r0 = base of space allocated for stacks (i.e. highest address)     * r1 = size of space     */    SUB    r2, r0, r1            /* r2->lowest usable address */    LDR    r3, L$_vxSvcIntStackEnd    STR    r2, [r3]            /*  == end of SVC-mode stack */    SUB    r2, r0, r1, ASR #3        /* leave 1/8 for IRQ */    LDR    r3, L$_vxSvcIntStackBase    STR    r2, [r3]    /* now allocate IRQ stack, setting irq_sp */    LDR    r3, L$_vxIrqIntStackEnd    STR    r2, [r3]    LDR    r3, L$_vxIrqIntStackBase    STR    r0, [r3]    MRS    r2, cpsr    BIC    r3, r2, #MASK_MODE    ORR    r3, r3, #MODE_IRQ32 | I_BIT    /* set irq_sp */    MSR    cpsr, r3    MOV    sp, r0    /* switch back to original mode and return */    MSR    cpsr, r2#if    (CPU == ARMARCH4_T)    BX     lr#else    MOV    pc, lr#endif    /* (CPU == ARMARCH4_T) */#ifdef INCLUDE_VWARE_LAUNCH#include "sysAVware.s"#endif /* INCLUDE_VWARE_LAUNCH *//******************************************************************************//* * PC-relative-addressable pointers - LDR Rn,=sym is broken * note "_" after "$" to stop preprocessor preforming substitution */    .balign    4L$_vxSvcIntStackBase:    .long    FUNC(vxSvcIntStackBase)L$_vxSvcIntStackEnd:    .long    FUNC(vxSvcIntStackEnd)L$_vxIrqIntStackBase:    .long    FUNC(vxIrqIntStackBase)L$_vxIrqIntStackEnd:    .long    FUNC(vxIrqIntStackEnd)#if    (CPU == ARMARCH4_T)L$_usrInit:    .long    FUNC(usrInit)#endif    /* (CPU == ARMARCH4_T) */L$_STACK_ADDR:    .long    FUNC(sysInit)L$_SbcArm7Intmsk:    .long    S3C44B0X_INTMASK/* Amine: deleted *//*L$_IopModReg:    .long    SNGKS32C_IOPMODL$_IopDat:    .long    SNGKS32C_IOPDATA*/

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品一区不卡| 久久精品国产一区二区三区免费看| 久久综合色天天久久综合图片| 欧美日韩一区二区三区四区五区| 色成人在线视频| 色偷偷久久一区二区三区| 一本一道波多野结衣一区二区| 91污在线观看| 在线免费观看日韩欧美| 欧美日韩久久一区| 在线综合视频播放| 久久久久久99久久久精品网站| 2017欧美狠狠色| 亚洲欧美在线高清| 婷婷国产在线综合| 久久99精品久久久久久动态图| 国产在线精品一区二区三区不卡| 国内外精品视频| 一本大道久久a久久精品综合| 欧美性受xxxx| xnxx国产精品| 亚洲精品成人少妇| 日本美女一区二区三区视频| 国产精一区二区三区| 99国产欧美久久久精品| 在线不卡中文字幕播放| 欧美精品一区二区三区视频| 中文字幕不卡一区| 午夜激情久久久| 国产精品99久久久| 在线观看一区不卡| 精品成人免费观看| 中文字幕一区三区| 美女视频一区在线观看| 国产99久久久国产精品潘金| 欧美日韩精品一区二区天天拍小说| 日韩欧美国产wwwww| 欧美激情一区二区三区| 亚洲成a人v欧美综合天堂下载| 激情五月婷婷综合| 欧美日韩中文字幕精品| 欧美国产精品一区二区三区| 丝袜脚交一区二区| caoporn国产一区二区| 日韩一区二区视频在线观看| 亚洲视频1区2区| 国产精品自拍在线| 日韩一二三四区| 一区二区三区四区国产精品| 精品亚洲免费视频| 欧美日韩国产大片| 亚洲精品国产无套在线观| 久久精品国产亚洲a| 在线亚洲欧美专区二区| 国产精品无圣光一区二区| 免费成人在线影院| 欧美日韩一区二区在线视频| 国产精品久久久久久久久免费樱桃| 美女视频一区二区| 欧美丰满一区二区免费视频| 亚洲精品你懂的| 99视频精品在线| 亚洲国产精品av| 激情五月婷婷综合| 欧美一区二区三区色| 亚洲chinese男男1069| 日本电影亚洲天堂一区| 亚洲色图在线播放| 一本一本久久a久久精品综合麻豆| 国产日韩欧美制服另类| 国产另类ts人妖一区二区| 2024国产精品视频| 国产一区二区剧情av在线| 久久色在线视频| 国产激情视频一区二区三区欧美 | 国产精品夜夜爽| 337p粉嫩大胆色噜噜噜噜亚洲| 精品一区在线看| 精品国产3级a| 国产成人免费xxxxxxxx| 国产精品乱人伦中文| 97精品视频在线观看自产线路二| 国产精品嫩草影院com| 91网站最新网址| 一区二区三区国产精华| 欧美日韩一区二区三区四区 | 欧美日韩aaaaa| 免费成人在线播放| 国产亚洲一区二区三区四区| 国产成人亚洲综合a∨猫咪| 国产精品久久久久精k8| 色综合久久99| 久久精品噜噜噜成人av农村| 亚洲精品一区二区精华| 成人免费视频网站在线观看| 自拍av一区二区三区| 欧美日韩一区国产| 久久99精品久久只有精品| 国产精品无人区| 欧美色图片你懂的| 国产精品一区二区在线观看不卡| 国产精品你懂的在线欣赏| 欧美视频在线观看一区二区| 蓝色福利精品导航| 国产精品剧情在线亚洲| 欧美日韩一区在线| 国产精品18久久久久久vr| 亚洲精品亚洲人成人网 | 成人午夜免费电影| 一区二区三区加勒比av| 久久众筹精品私拍模特| 91蝌蚪porny| 狠狠色伊人亚洲综合成人| 亚洲日本成人在线观看| 精品久久久久99| 在线免费观看日本欧美| 国产黄色91视频| 日本成人超碰在线观看| 亚洲图片激情小说| 精品国内二区三区| 欧美精品tushy高清| av激情综合网| 韩国精品一区二区| 五月婷婷久久丁香| 综合久久国产九一剧情麻豆| 日本一区二区三级电影在线观看| 久久久久久久久久久久久夜| 日韩精品一二区| 亚洲第四色夜色| 国产亚洲精品精华液| 欧美高清在线精品一区| 国产精品久久久久aaaa| 一区二区国产盗摄色噜噜| 五月天亚洲婷婷| 国产精品综合久久| 91久久精品一区二区| 欧美日韩精品三区| 2020国产精品| 一区二区三区精密机械公司| 日本aⅴ亚洲精品中文乱码| 国产高清成人在线| 91行情网站电视在线观看高清版| 666欧美在线视频| 国产亚洲人成网站| 亚洲综合色区另类av| 久久狠狠亚洲综合| 91视频免费观看| 欧美成人官网二区| 亚洲日本中文字幕区| 蜜臀av国产精品久久久久| 波多野结衣中文字幕一区| 欧美美女一区二区三区| 久久精品网站免费观看| 亚洲国产日韩a在线播放| 国产精品一区二区视频| 欧美在线播放高清精品| 久久免费午夜影院| 午夜欧美在线一二页| 国产成人免费视频精品含羞草妖精| 欧美私模裸体表演在线观看| 久久久影院官网| 亚洲18色成人| 99精品视频一区二区三区| 日韩欧美二区三区| 亚洲国产日韩a在线播放性色| 懂色av一区二区夜夜嗨| 日韩一区二区精品在线观看| 综合久久久久久| 国产成人精品网址| 91精品久久久久久蜜臀| 一区二区三区四区乱视频| 国产91富婆露脸刺激对白| 7777精品久久久大香线蕉| 亚洲精品中文字幕在线观看| 国产成人在线视频播放| 日韩视频永久免费| 午夜私人影院久久久久| 色综合久久中文综合久久97| 久久久国产精华| 精品一区二区免费视频| 欧美精品在线视频| 亚洲最新视频在线观看| 91在线观看污| 日本一区二区免费在线观看视频| 日本一道高清亚洲日美韩| 欧美日韩亚洲国产综合| 一区二区三区在线视频免费| 91视频免费观看| 亚洲啪啪综合av一区二区三区| 播五月开心婷婷综合| 国产精品久久毛片| 99久久精品免费| ...中文天堂在线一区| 成人精品视频网站| 国产精品久久久久影院老司| 成人国产精品免费观看| 日本一区二区免费在线观看视频 | 欧美一级精品在线| 日本va欧美va瓶| 精品三级在线看|