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

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

?? ixnpemhsend.c

?? u-boot1.3.0的原碼,從配了網絡驅動和FLASH的驅動,并該用ESC竟如
?? C
字號:
/** * @file IxNpeMhSend.c * * @author Intel Corporation * @date 18 Jan 2002 * * @brief This file contains the implementation of the private API for the * Send module. * * * @par * IXP400 SW Release version 2.0 * * -- Copyright Notice -- * * @par * Copyright 2001-2005, Intel Corporation. * All rights reserved. * * @par * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright *    notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright *    notice, this list of conditions and the following disclaimer in the *    documentation and/or other materials provided with the distribution. * 3. Neither the name of the Intel Corporation nor the names of its contributors *    may be used to endorse or promote products derived from this software *    without specific prior written permission. * * @par * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS'' * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * * @par * -- End of Copyright Notice --*//* * Put the system defined include files required. *//* * Put the user defined include files required. */#include "IxNpeMhMacros_p.h"#include "IxNpeMhConfig_p.h"#include "IxNpeMhSend_p.h"#include "IxNpeMhSolicitedCbMgr_p.h"/* * #defines and macros used in this file. *//** * @def IX_NPEMH_INFIFO_RETRY_DELAY_US * * @brief Amount of time (uSecs) to delay between retries * while inFIFO is Full when attempting to send a message */#define IX_NPEMH_INFIFO_RETRY_DELAY_US (1)/* * Typedefs whose scope is limited to this file. *//** * @struct IxNpeMhSendStats * * @brief This structure is used to maintain statistics for the Send * module. */typedef struct{    UINT32 sends;             /**< send invocations */    UINT32 sendWithResponses; /**< send with response invocations */    UINT32 queueFulls;        /**< fifo queue full occurrences */    UINT32 queueFullRetries;  /**< fifo queue full retry occurrences */    UINT32 maxQueueFullRetries; /**< max fifo queue full retries */    UINT32 callbackFulls;     /**< callback list full occurrences */} IxNpeMhSendStats;/* * Variable declarations global to this file only.  Externs are followed by * static variables. */PRIVATE IxNpeMhSendStats ixNpeMhSendStats[IX_NPEMH_NUM_NPES];/* * Extern function prototypes. *//* * Static function prototypes. */PRIVATEBOOL ixNpeMhSendInFifoIsFull(    IxNpeMhNpeId npeId,    UINT32 maxSendRetries);/* * Function definition: ixNpeMhSendInFifoIsFull */PRIVATEBOOL ixNpeMhSendInFifoIsFull(    IxNpeMhNpeId npeId,    UINT32 maxSendRetries){    BOOL isFull = FALSE;    UINT32 numRetries = 0;    /* check the NPE's inFIFO */    isFull = ixNpeMhConfigInFifoIsFull (npeId);    /* we retry a few times, just to give the NPE a chance to read from */    /* the FIFO if the FIFO is currently full */    while (isFull && (numRetries++ < maxSendRetries))    {	if (numRetries >= IX_NPEMH_SEND_RETRIES_DEFAULT)	{	    /* Delay here for as short a time as possible (1 us). */	    /* Adding a delay here should ensure we are not hogging */	    /* the AHB bus while we are retrying                    */	    ixOsalBusySleep (IX_NPEMH_INFIFO_RETRY_DELAY_US);	}        /* re-check the NPE's inFIFO */        isFull = ixNpeMhConfigInFifoIsFull (npeId);        /* update statistical info */        ixNpeMhSendStats[npeId].queueFullRetries++;    }    /* record the highest number of retries that occurred */    if (ixNpeMhSendStats[npeId].maxQueueFullRetries < numRetries)    {	ixNpeMhSendStats[npeId].maxQueueFullRetries = numRetries;    }    if (isFull)    {        /* update statistical info */        ixNpeMhSendStats[npeId].queueFulls++;    }    return isFull;}/* * Function definition: ixNpeMhSendMessageSend */IX_STATUS ixNpeMhSendMessageSend (    IxNpeMhNpeId npeId,    IxNpeMhMessage message,    UINT32 maxSendRetries){    IX_STATUS status;    IX_NPEMH_TRACE0 (IX_NPEMH_FN_ENTRY_EXIT, "Entering "                     "ixNpeMhSendMessageSend\n");    /* update statistical info */    ixNpeMhSendStats[npeId].sends++;    /* check if the NPE's inFIFO is full - if so return an error */    if (ixNpeMhSendInFifoIsFull (npeId, maxSendRetries))    {        IX_NPEMH_TRACE0 (IX_NPEMH_WARNING, "NPE's inFIFO is full\n");        return IX_FAIL;    }    /* write the message to the NPE's inFIFO */    status = ixNpeMhConfigInFifoWrite (npeId, message);    IX_NPEMH_TRACE0 (IX_NPEMH_FN_ENTRY_EXIT, "Exiting "                     "ixNpeMhSendMessageSend\n");    return status;}/* * Function definition: ixNpeMhSendMessageWithResponseSend */IX_STATUS ixNpeMhSendMessageWithResponseSend (    IxNpeMhNpeId npeId,    IxNpeMhMessage message,    IxNpeMhMessageId solicitedMessageId,    IxNpeMhCallback solicitedCallback,    UINT32 maxSendRetries){    IX_STATUS status = IX_SUCCESS;    IX_NPEMH_TRACE0 (IX_NPEMH_FN_ENTRY_EXIT, "Entering "                     "ixNpeMhSendMessageWithResponseSend\n");    /* update statistical info */    ixNpeMhSendStats[npeId].sendWithResponses++;    /* sr: this sleep will call the receive routine (no interrupts used!!!) */    ixOsalSleep (IX_NPEMH_INFIFO_RETRY_DELAY_US);    /* check if the NPE's inFIFO is full - if so return an error */    if (ixNpeMhSendInFifoIsFull (npeId, maxSendRetries))    {        IX_NPEMH_TRACE0 (IX_NPEMH_WARNING, "NPE's inFIFO is full\n");        return IX_FAIL;    }    /* save the solicited callback */    status = ixNpeMhSolicitedCbMgrCallbackSave (        npeId, solicitedMessageId, solicitedCallback);    if (status != IX_SUCCESS)    {        IX_NPEMH_ERROR_REPORT ("Failed to save solicited callback\n");        /* update statistical info */        ixNpeMhSendStats[npeId].callbackFulls++;        return status;    }    /* write the message to the NPE's inFIFO */    status = ixNpeMhConfigInFifoWrite (npeId, message);    IX_NPEMH_TRACE0 (IX_NPEMH_FN_ENTRY_EXIT, "Exiting "                     "ixNpeMhSendMessageWithResponseSend\n");    return status;}/* * Function definition: ixNpeMhSendShow */void ixNpeMhSendShow (    IxNpeMhNpeId npeId){    /* show the message send invocation counter */    IX_NPEMH_SHOW ("Send invocations",                   ixNpeMhSendStats[npeId].sends);    /* show the message send with response invocation counter */    IX_NPEMH_SHOW ("Send with response invocations",                   ixNpeMhSendStats[npeId].sendWithResponses);    /* show the fifo queue full occurrence counter */    IX_NPEMH_SHOW ("Fifo queue full occurrences",                   ixNpeMhSendStats[npeId].queueFulls);    /* show the fifo queue full retry occurrence counter */    IX_NPEMH_SHOW ("Fifo queue full retry occurrences",                   ixNpeMhSendStats[npeId].queueFullRetries);    /* show the fifo queue full maximum retries counter */    IX_NPEMH_SHOW ("Maximum fifo queue full retries",                   ixNpeMhSendStats[npeId].maxQueueFullRetries);    /* show the callback list full occurrence counter */    IX_NPEMH_SHOW ("Solicited callback list full occurrences",                   ixNpeMhSendStats[npeId].callbackFulls);}/* * Function definition: ixNpeMhSendShowReset */void ixNpeMhSendShowReset (    IxNpeMhNpeId npeId){    /* reset the message send invocation counter */    ixNpeMhSendStats[npeId].sends = 0;    /* reset the message send with response invocation counter */    ixNpeMhSendStats[npeId].sendWithResponses = 0;    /* reset the fifo queue full occurrence counter */    ixNpeMhSendStats[npeId].queueFulls = 0;    /* reset the fifo queue full retry occurrence counter */    ixNpeMhSendStats[npeId].queueFullRetries = 0;    /* reset the max fifo queue full retries counter */    ixNpeMhSendStats[npeId].maxQueueFullRetries = 0;    /* reset the callback list full occurrence counter */    ixNpeMhSendStats[npeId].callbackFulls = 0;}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产一区二区三区综合| 美美哒免费高清在线观看视频一区二区| 精品视频1区2区3区| 一本久久a久久精品亚洲| av电影在线不卡| av亚洲精华国产精华精| 91亚洲男人天堂| 91麻豆swag| 欧美视频中文字幕| 欧美高清性hdvideosex| 91精品婷婷国产综合久久性色| 欧美日韩免费视频| 欧美精品粉嫩高潮一区二区| 欧美一区二区三区视频在线| 日韩一级大片在线观看| 亚洲精品在线免费播放| 中文字幕乱码一区二区免费| 亚洲少妇中出一区| 丝袜亚洲另类欧美| 国产一区二区按摩在线观看| 99久久精品国产毛片| 欧美日韩国产综合一区二区三区| 日韩欧美专区在线| 中文av字幕一区| 婷婷国产v国产偷v亚洲高清| 国模套图日韩精品一区二区| av中文字幕一区| 欧美日韩成人一区二区| 久久久精品国产99久久精品芒果| 国产精品丝袜黑色高跟| 性欧美疯狂xxxxbbbb| 国产成人精品亚洲777人妖| youjizz国产精品| 在线综合视频播放| 中文字幕精品一区二区精品绿巨人| 最新高清无码专区| 黄色资源网久久资源365| 色综合天天综合网天天看片| 日韩欧美黄色影院| 久久青草欧美一区二区三区| 亚洲黄色在线视频| 国产精品综合二区| 欧美老女人第四色| 亚洲日本乱码在线观看| 久久国产精品99久久久久久老狼 | 欧美经典一区二区| 亚洲第一会所有码转帖| 成人午夜私人影院| 欧美一区二区黄| 亚洲激情av在线| www.激情成人| 久久蜜桃av一区二区天堂| 亚洲一二三区不卡| 99久久免费精品| 久久美女艺术照精彩视频福利播放| 亚洲超碰97人人做人人爱| 99久久久国产精品| 久久精品一区蜜桃臀影院| 日日欢夜夜爽一区| 欧美色综合天天久久综合精品| 国产日产欧美精品一区二区三区| 日韩中文字幕不卡| 91麻豆蜜桃一区二区三区| 国产欧美一区二区精品性| 美女视频网站久久| 欧美一区二区成人6969| 香蕉久久一区二区不卡无毒影院| 色婷婷亚洲婷婷| 成人欧美一区二区三区1314| 麻豆成人在线观看| 欧美一区二区三区日韩视频| 日本中文在线一区| 欧美一区二区成人| 久久精品国产亚洲5555| 日韩美女视频在线| 麻豆成人综合网| 精品久久免费看| 国产一区二区三区电影在线观看| 日韩精品一区在线| 狠狠色丁香九九婷婷综合五月| 欧美一区二区三区性视频| 免播放器亚洲一区| 久久综合九色欧美综合狠狠| 国内精品久久久久影院色| 久久久久久免费网| 波多野结衣一区二区三区| 国产精品久久精品日日| av欧美精品.com| 亚洲图片欧美综合| 日韩一区二区三区四区 | 久久人人97超碰com| 国产福利一区二区三区| 综合久久国产九一剧情麻豆| 成人黄色电影在线| 一区二区三区高清| 日韩欧美自拍偷拍| 成人一区二区三区中文字幕| 亚洲精品美国一| 日韩精品中文字幕在线一区| 国产麻豆精品视频| 最新国产の精品合集bt伙计| 欧美精品高清视频| 成人动漫一区二区| 日韩av一区二| 国产精品青草综合久久久久99| 欧美亚洲精品一区| 国产一区二区三区国产| 亚洲一区免费在线观看| 欧美不卡一区二区三区四区| 91在线云播放| 国产做a爰片久久毛片| 国产精品萝li| 日韩欧美在线1卡| 99国产精品99久久久久久| 麻豆精品在线视频| 亚洲欧美日韩一区二区三区在线观看| 欧美电影在哪看比较好| av电影一区二区| 国产在线精品一区二区不卡了| 亚洲日本在线a| 久久精品免费在线观看| 欧美高清视频不卡网| 成人短视频下载| 精品一二三四区| 婷婷国产在线综合| 亚洲免费资源在线播放| 久久久精品日韩欧美| 日韩一区二区精品葵司在线| 欧洲精品在线观看| caoporn国产一区二区| 国产一区二区三区不卡在线观看| 午夜成人在线视频| 一区二区三区日韩在线观看| 国产女人aaa级久久久级 | 日本欧美加勒比视频| 亚洲三级电影全部在线观看高清| 26uuu另类欧美| 欧美一区二区三区视频在线| 欧美日韩卡一卡二| 欧美伊人久久大香线蕉综合69| 不卡的av网站| 成人av在线一区二区三区| 国产精品自拍三区| 国产精品99久久久久久久女警| 九九九精品视频| 久久se精品一区精品二区| 免费观看成人鲁鲁鲁鲁鲁视频| 亚洲国产成人tv| 亚洲高清免费视频| 天天射综合影视| 麻豆精品在线播放| 老司机精品视频一区二区三区| 午夜欧美2019年伦理| 偷拍自拍另类欧美| 日韩av不卡一区二区| 日本美女一区二区三区视频| 青草av.久久免费一区| 美女脱光内衣内裤视频久久影院| 日韩vs国产vs欧美| 国产一区欧美日韩| 国产成人免费在线观看不卡| 成人夜色视频网站在线观看| 95精品视频在线| 在线看国产一区| 欧美日本一区二区三区| 欧美成人性福生活免费看| 久久久久久亚洲综合影院红桃 | 色婷婷综合在线| 欧美日韩一区视频| 日韩一区二区精品在线观看| 久久久久综合网| 亚洲美女免费在线| 日韩综合在线视频| 国产在线视频精品一区| 成人av在线播放网址| 欧美在线999| 日韩欧美久久久| 中文av字幕一区| 亚洲第一久久影院| 激情五月激情综合网| 91色porny| 日韩午夜激情视频| 中文字幕不卡三区| 天天影视涩香欲综合网| 国产一区二区精品久久99| 91国模大尺度私拍在线视频| 日韩欧美亚洲一区二区| 国产精品久线在线观看| 三级欧美韩日大片在线看| 丁香婷婷综合激情五月色| 欧美日韩在线免费视频| 久久久高清一区二区三区| 亚洲一卡二卡三卡四卡五卡| 国内不卡的二区三区中文字幕| 色88888久久久久久影院野外| 精品国产免费一区二区三区香蕉| 亚洲精品国久久99热| 国产制服丝袜一区| 欧美老人xxxx18| 亚洲黄色在线视频|