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

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

?? sysalib.s

?? at91rm9200 bsp at91rm9200 bsp
?? S
字號:
/* sysALib.s - Samsung SBC ARM7 system-dependent routines *//* Copyright 1984-2001 Wind River Systems, Inc. *//*modification history--------------------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 */    /* 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, =0xFFFFF124            /* R2->interrupt controller */    MVN    r1, #0                /* &FFFFFFFF */    STR    r1, [r2]            /* disable all interrupt soucres */    /* 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    SNGKS32C_INTMASKL$_IopModReg:    .long    SNGKS32C_IOPMODL$_IopDat:    .long    SNGKS32C_IOPDATA*/

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩欧美综合一区| 欧美高清激情brazzers| 欧美在线短视频| 欧美成人video| 亚洲永久精品大片| 福利电影一区二区三区| 67194成人在线观看| 一区二区三区电影在线播| 国精品**一区二区三区在线蜜桃| 欧美午夜电影在线播放| 中文一区二区在线观看| 激情五月播播久久久精品| 欧美日韩不卡视频| 亚洲精品国产一区二区精华液| 国产成人综合在线观看| 日韩美女主播在线视频一区二区三区 | 91浏览器在线视频| 国产女人18水真多18精品一级做| 日韩高清在线不卡| 欧美日韩黄视频| 一区二区三区欧美日韩| 9人人澡人人爽人人精品| 久久精子c满五个校花| 青草国产精品久久久久久| 欧美日韩一二三区| 亚洲成人自拍一区| 欧美日韩国产成人在线免费| 一区二区在线免费观看| 91视频在线看| 亚洲男人的天堂网| 色综合久久久久综合体桃花网| 欧美国产一区二区在线观看| 国产精品88av| 国产亚洲精品福利| 成人av在线资源网站| 中文字幕亚洲在| 91捆绑美女网站| 亚洲一区二区三区四区的| 日本韩国精品一区二区在线观看| 1024成人网| 91激情五月电影| 午夜国产精品一区| 日韩一区二区视频| 国内外成人在线视频| 国产欧美视频在线观看| 成人免费视频caoporn| 中文字幕欧美日本乱码一线二线 | 国产日韩v精品一区二区| 国产不卡免费视频| 亚洲三级在线免费观看| 在线精品视频一区二区三四| 五月激情丁香一区二区三区| 日韩一区二区三区四区| 国产精品一二一区| 亚洲男人的天堂在线观看| 欧美视频中文一区二区三区在线观看| 性久久久久久久| 久久久久久久一区| 91在线观看视频| 日韩av一区二区三区四区| 久久综合av免费| 色综合久久中文综合久久牛| 日本三级韩国三级欧美三级| 国产校园另类小说区| 91麻豆精品视频| 捆绑紧缚一区二区三区视频| 中文字幕乱码亚洲精品一区| 欧美日韩视频不卡| av资源网一区| 免费看欧美女人艹b| 国产精品久久久久7777按摩| 欧美久久久久久久久久| 国产成人av影院| 日韩极品在线观看| 最新日韩av在线| 精品国产一区久久| 欧美艳星brazzers| 高清不卡在线观看| 日韩影院在线观看| 国产精品夫妻自拍| 国产日韩视频一区二区三区| 在线不卡中文字幕播放| av激情综合网| 国产精品综合在线视频| 丝袜美腿亚洲色图| 17c精品麻豆一区二区免费| 亚洲精品一区二区在线观看| 欧美日韩一级片网站| caoporn国产一区二区| 麻豆免费看一区二区三区| 亚洲免费在线电影| 欧美国产一区在线| 久久精品男人的天堂| 欧美一级视频精品观看| 欧美日韩小视频| 欧美亚日韩国产aⅴ精品中极品| 粉嫩aⅴ一区二区三区四区五区| 另类小说视频一区二区| 亚洲超碰精品一区二区| 亚洲精品一卡二卡| 国产精品网站在线播放| 精品日韩一区二区三区免费视频| 欧美色图免费看| 色屁屁一区二区| 色呦呦网站一区| 色综合天天综合在线视频| 99精品视频中文字幕| av一二三不卡影片| www.综合网.com| aaa亚洲精品一二三区| 成人av片在线观看| 不卡在线观看av| www.66久久| 在线观看一区日韩| 欧美三级一区二区| 欧美日韩精品一区二区三区蜜桃| 欧美日韩一级二级三级| 欧美日韩精品系列| 欧美一级xxx| 久久久久久久综合日本| 国产亚洲一本大道中文在线| 久久久精品黄色| 中文字幕在线不卡| 一级女性全黄久久生活片免费| 亚洲一卡二卡三卡四卡五卡| 亚洲欧美另类图片小说| 亚洲一区二区中文在线| 日韩精品电影在线| 精彩视频一区二区| 国产91精品精华液一区二区三区| 国产高清精品在线| 色婷婷av一区二区三区软件 | 视频在线观看一区二区三区| 日本在线不卡一区| 亚洲成精国产精品女| 久久精品国产一区二区三| 国产一区二区精品久久91| 丁香啪啪综合成人亚洲小说| 91免费观看视频在线| 欧美私人免费视频| 精品欧美一区二区三区精品久久 | 一本一本久久a久久精品综合麻豆| 91免费在线视频观看| 在线电影欧美成精品| 久久一二三国产| 国产精品视频在线看| 亚洲最色的网站| 久久国产精品无码网站| 成人在线视频首页| 91精品久久久久久久99蜜桃| 久久久久久97三级| 一区二区三区在线不卡| 精品系列免费在线观看| 成人在线综合网站| 欧美一区二区三区播放老司机| 久久这里只有精品视频网| 综合色天天鬼久久鬼色| 日韩精品1区2区3区| 成人免费的视频| 欧美精品日日鲁夜夜添| 国产精品免费网站在线观看| 亚洲成人精品在线观看| 成人免费毛片片v| 精品日韩欧美一区二区| 一区二区三区中文字幕| 国产精品一区二区久激情瑜伽| 懂色av一区二区夜夜嗨| 884aa四虎影成人精品一区| 中文字幕一区免费在线观看| 久久精品久久精品| 在线成人av影院| 亚洲网友自拍偷拍| 色综合一个色综合| 欧美韩国日本综合| 激情另类小说区图片区视频区| 在线观看亚洲精品视频| 国产精品久久久久影院亚瑟 | 欧洲亚洲国产日韩| 国产拍欧美日韩视频二区| 丝袜亚洲另类丝袜在线| 色婷婷精品大在线视频| 欧美激情在线看| 国产精品系列在线播放| 欧美电视剧在线观看完整版| 亚洲国产精品人人做人人爽| 99免费精品在线| 亚洲视频一区二区在线| 国产精品18久久久久久久网站| 日韩精品中文字幕一区| 日韩精品电影在线| 91精品国产色综合久久| 亚洲国产精品嫩草影院| 91网页版在线| 亚洲精品日产精品乱码不卡| 成人黄色在线网站| 国产精品国产馆在线真实露脸 | 欧美日韩亚洲丝袜制服| 亚洲自拍另类综合| 欧美中文一区二区三区| 亚洲女同一区二区|