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

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

?? sysnvram.c

?? WINDRIVER SBC405 BSP
?? C
字號:
/* sysNvRam.c - NVRAM driver *//* Copyright 1984-2002 Wind River Systems, Inc. */#include "copyright_wrs.h"/*modification history--------------------01b,15dec01,g_h  Fixe bug in sysNvRamGet that cause the VTS to fail01a,03jul01,g_h  created.*//*DESCRIPTIONThis library contains routines to manipulate NvRAM on Flash memory.The macros NV_RAM_ADRS and NV_RAM_SIZE must be defined to indicate theaddress and size of the Flash memory.*/#include "vxWorks.h"#include "config.h"#include "memLib.h"#include "stdlib.h"#include "i28F640J3Mem.h"#include "i28F640J3Mem.c"/***********************************************************************    ** sysNvRamGet - get the contents of non-volatile RAM** This routine copies the contents of non-volatile memory into a specified* string.  The string will be terminated with an EOS.** NOTE: The board has no NVRAM, so we've implemented some pseudo-NVRAM*       in the flash.** RETURNS: OK or ERROR** SEE ALSO: sysNvRamSet()*/STATUS sysNvRamGet    (    char * string, /* where to copy flash memory      */    int	   strLen, /* maximum number of bytes to copy */    int	   offset  /* byte offset into flash memory   */    )    {    char * pNvRam;    char * pString;    int	   i;    offset += NV_BOOT_OFFSET;   /* boot line begins at <offset> = 0 */    /* Check that the string is entirely within the NVRAM */    if ((offset < 0) || (strLen < 0) || ((offset + strLen) > NV_RAM_SIZE))        return ERROR;           pNvRam  = (char *)(NV_RAM_ADRS + offset);    pString =  (char *)string;    for (i = 0; i < strLen; i++)        *pString++ = *pNvRam++;    *pString = EOS; /* force EOS onto nvram string */    /*      * It seems that the generic boot-line code expects this function to check     * the contents and report any errors. The default boot line is only used if     * this function returns ERROR. So, we return ERROR if the NvRam block contine     * only 0xFF character (= erased flash).     */    for (pNvRam = (char*)NV_RAM_ADRS; pNvRam < (char*)(NV_RAM_ADRS + NV_RAM_SIZE); pNvRam++)        {        if (*pNvRam != 0xFF)           return (OK);        }    return (ERROR);}/************************************************************************* sysNvRamSet - write data to non-volatile RAM** This routine copies the provided string to the non-volatile memory.** NOTE: The board has no NVRAM, so we've implemented some pseudo-NVRAM*       in the flash. The "NVRAM" is a small region at the very top of *       flash memory, and can thus be read using normal memory accesses. *       However, to write the data we have to read the entire top sector, *       modify its contents, erase the top sector, and then reprogram it.** RETURNS: OK or ERROR** SEE ALSO: sysNvRamGet()*/STATUS sysNvRamSet    (    char * string, /* string to be copied into flash memory */    int	   strLen, /* maximum number of bytes to copy       */    int	   offset  /* byte offset into flash memory         */    )    {    UINT32   blockOffs;    char   * pBlock;    char   * pTmpBuf;    offset += NV_BOOT_OFFSET;   /* boot line begins at <offset> = 0 */    /* Check that the string will fit entirely into the NVRAM */    if ((offset < 0) || (strLen < 0) || ((offset + strLen) > NV_RAM_SIZE))        return ERROR;    /* see if contents are actually changing */    if (bcmp ((char *) (NV_RAM_ADRS + offset), string, strLen) == 0)	return OK;    /* Allocate a temporary buffer for the operation */    pTmpBuf = (char *)malloc (FLASH_SECTOR_SIZE);    if ( pTmpBuf == NULL )        return ERROR;    pBlock = (UINT8 *)((UINT32)(NV_RAM_ADRS + offset) & ~(FLASH_SECTOR_SIZE-1));    /* Copy current contents of flash (entire sector) to the buffer */    memcpy (pTmpBuf,(void*)pBlock,FLASH_SECTOR_SIZE);    /* Now erase the flash sector */    i28F640J3EraseSector ((volatile UINT8 *)pBlock);    blockOffs = (NV_RAM_ADRS + offset) & (FLASH_SECTOR_SIZE-1);    /* Overwrite buffer contents with specified string */    memcpy ((void*)(pTmpBuf + blockOffs),string,strLen);    /* Now program the flash sector */    i28F640J3Write ((volatile UINT8 *)pBlock, pTmpBuf, FLASH_SECTOR_SIZE);    /*      * We could verify the programming here, but there's big trouble if     * it didn't work, so we won't bother.      */    free (pTmpBuf);    return OK;}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久蜜桃av一区二区天堂| 久久国产视频网| 成人激情小说乱人伦| 日韩欧美色综合| 日韩中文字幕1| 欧美体内she精视频| 亚洲综合无码一区二区| 91亚洲精品久久久蜜桃| 成人欧美一区二区三区白人| 国产一区二区三区综合| 久久这里都是精品| 国产美女一区二区三区| 中文字幕制服丝袜成人av| 成年人网站91| 亚洲v日本v欧美v久久精品| 91福利精品视频| 亚洲国产精品一区二区久久| 欧美三区免费完整视频在线观看| 一区二区三区欧美日| 在线观看www91| 麻豆国产精品一区二区三区| 久久综合九色综合97婷婷女人| 国产成人免费在线| 亚洲精品国产一区二区精华液 | 日韩1区2区3区| 精品国产百合女同互慰| 成人av先锋影音| 久久精品一区蜜桃臀影院| 99精品国产一区二区三区不卡| 亚洲欧美日韩系列| 欧美一区二区三区免费大片 | 亚洲va天堂va国产va久| 欧美成人乱码一区二区三区| 成人av动漫网站| 亚洲国产另类精品专区| 国产午夜精品一区二区| 亚洲综合激情另类小说区| 国内外成人在线| 日韩一区在线看| 精品成人a区在线观看| 欧美视频在线一区| 国产成人精品免费在线| 午夜久久电影网| 亚洲三级电影网站| 日本一区二区三区四区在线视频| 在线观看国产91| av男人天堂一区| 国产精品自拍一区| 九一九一国产精品| 亚洲成人免费看| 亚洲国产日韩a在线播放性色| 中文无字幕一区二区三区| 欧美成人精品3d动漫h| 在线成人av影院| 欧美久久久久久久久久| 91论坛在线播放| 欧美亚洲图片小说| av午夜精品一区二区三区| 99热在这里有精品免费| 9i在线看片成人免费| 99精品视频在线免费观看| 99久久综合色| 欧美视频在线一区二区三区| 色88888久久久久久影院野外 | 一区二区欧美国产| 亚洲第一搞黄网站| 丝袜美腿亚洲一区| 国内精品国产三级国产a久久| 国内外精品视频| av亚洲精华国产精华| 欧美日韩午夜影院| 69久久夜色精品国产69蝌蚪网| 亚洲精品在线观看视频| 国产精品理论片| 亚洲va欧美va人人爽| 九色综合狠狠综合久久| 99re这里都是精品| 欧美成人a视频| 亚洲激情图片qvod| 国产一区二区按摩在线观看| 91久久奴性调教| 国产欧美日韩三区| 日韩国产一二三区| 91啪九色porn原创视频在线观看| 欧美日韩一级片网站| 国产精品国产三级国产普通话蜜臀 | 欧美日韩一区三区四区| 久久精品一区八戒影视| 日韩专区中文字幕一区二区| 成av人片一区二区| 国产香蕉久久精品综合网| 亚洲风情在线资源站| 91网页版在线| 国产精品水嫩水嫩| 国产在线国偷精品免费看| 欧美日韩亚洲综合在线 欧美亚洲特黄一级 | 精品国产乱码久久久久久牛牛| 久久久夜色精品亚洲| 亚洲国产欧美日韩另类综合| 成人综合婷婷国产精品久久| 精品国产百合女同互慰| 国内精品久久久久影院薰衣草 | 日本欧美韩国一区三区| 欧美性猛交xxxx黑人交| 一区二区高清免费观看影视大全| 成人免费视频视频| 欧美性感一区二区三区| 欧美一区二区三区免费大片| 亚洲人一二三区| 在线视频一区二区免费| 亚洲午夜久久久久中文字幕久| 色综合网色综合| 婷婷综合在线观看| 欧美大片日本大片免费观看| 激情另类小说区图片区视频区| 日韩精品综合一本久道在线视频| 九九在线精品视频| 中文字幕欧美区| 欧美性受xxxx黑人xyx| 久久se这里有精品| 亚洲国产精品成人综合色在线婷婷 | 日韩电影免费一区| 久久综合色综合88| 成人免费电影视频| 亚洲成人一区二区在线观看| 精品奇米国产一区二区三区| 成人视屏免费看| 香蕉加勒比综合久久| 久久这里只有精品首页| 色欲综合视频天天天| 日韩在线卡一卡二| 亚洲免费观看视频| 国产亚洲美州欧州综合国| 在线观看一区二区视频| 国产精品1区2区| 偷拍日韩校园综合在线| 国产精品福利在线播放| 欧美成人激情免费网| 7777精品伊人久久久大香线蕉经典版下载 | 日韩av午夜在线观看| 亚洲欧美怡红院| 久久久99精品久久| 日韩午夜精品视频| 欧美精品少妇一区二区三区 | 激情综合色综合久久综合| 一区二区成人在线观看| 国产精品国产三级国产普通话三级| 日韩一区二区视频| 欧美xxxxx裸体时装秀| 欧美一区二区三区四区五区| 欧日韩精品视频| 欧美影片第一页| 欧美日韩一区三区四区| 欧美色图免费看| 欧美三级午夜理伦三级中视频| 国产精品99久| 成人性视频网站| 91在线视频播放| 91成人免费网站| 欧美久久一区二区| 欧美一区二区三区婷婷月色| 精品国产免费一区二区三区四区 | 色综合天天综合色综合av| 91香蕉视频污在线| 欧美一区二区女人| 欧美激情一区二区| 中文字幕一区二区在线观看| 亚洲综合色噜噜狠狠| 乱一区二区av| 色天天综合色天天久久| 欧美一个色资源| 国产亚洲一区二区三区四区 | 一区二区在线看| 欧美aⅴ一区二区三区视频| 国产电影精品久久禁18| 不卡影院免费观看| 91成人在线观看喷潮| 久久久久久久久久看片| 亚洲亚洲精品在线观看| 国产美女在线观看一区| 欧美视频一区二区三区四区| 久久午夜免费电影| 日韩电影网1区2区| 99re这里只有精品视频首页| 日韩一级二级三级| 亚洲视频香蕉人妖| 国产乱子轮精品视频| 欧美一级片免费看| 日韩视频国产视频| 精品国产乱码久久久久久蜜臀| 中文字幕av在线一区二区三区| 日韩精品一级二级| 欧美性猛片xxxx免费看久爱| 国产三级一区二区三区| 蜜臀99久久精品久久久久久软件| 91国偷自产一区二区三区观看 | 在线观看免费视频综合| 成人免费在线视频| 99re这里只有精品首页| ...xxx性欧美|