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

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

?? sysfei82557end.c

?? Vxworks For PC Pentium 的BSP,已在Vmware上調試通過,可以在pentium/pentiumII/pentium/PentiumIV 上運行,以太網口工作正常. 調試環境,
?? C
?? 第 1 頁 / 共 3 頁
字號:
    sys557eepromWriteBits (unit, EE_CMD_WRITE, 3);    /* (3) Write the Address field */    sys557eepromWriteBits (unit, location, EE_SIZE_BITS);    /* (4) Write the data field */    sys557eepromWriteBits (unit, data, 16);    /* (5) Deactivate the EEPROM */    sysOutWord (iobase + SCB_EEPROM, 0);    sysDelay ();    /* delay */    sysOutWord (iobase + SCB_EEPROM, FEI_EECS);    sysDelay ();    for (i = 0; i < 1000; ++i)        {        if (sysInWord (iobase + SCB_EEPROM) & FEI_EEDO)            break;        for (j = 0; j < 50; ++j)            sysDelay ();        }    sysOutWord (iobase + SCB_EEPROM, 0);    sysDelay ();    /* Disable the write access */    sysOutWord (iobase + SCB_EEPROM, FEI_EECS);    sys557eepromWriteBits (unit, 0x4, 3);    sys557eepromWriteBits (unit, 0, EE_SIZE_BITS);    sysOutWord (iobase + SCB_EEPROM, 0);    sysDelay ();    }/********************************************************************************* sys557eepromWriteBits - write bits to 82557 PCI ethernet device EEPROM** This routine writes a specified <data> item of <bitlen> length-in-bits* to the serial EEPROM of an Intel 8255x device associated with an* END driver <unit> number.** RETURNS: N/A** NOMANUAL*/LOCAL void sys557eepromWriteBits    (    int     unit,           /* END driver unit number */    UINT16  data,           /* the data to write */    int     bitlen          /* the data length in bits */    )    {    UINT16  iobase = (feiPciResources[unit].bar[1]);    UINT16  reg;    UINT16  mask;    /* write the data, MSB first */    for (mask = 1 << (bitlen - 1); mask; mask >>= 1)         {        /* if mask and data then set the EEDI bit on */        reg = ((data & mask) ? (FEI_EECS | FEI_EEDI) : (FEI_EECS));        /* (a) write the bit to the EEDI bit */        sysOutWord (iobase + SCB_EEPROM, reg);        sysDelay();        /* (b) write a '1' to the EESK bit then wait the minumum SK high time */        sysOutWord (iobase + SCB_EEPROM, reg | FEI_EESK);        sysDelay();        /* (c) write a '0' to the EESK bit then wait the minimum SK low time */        sysOutWord (iobase + SCB_EEPROM, reg);        sysDelay();        }    }/********************************************************************************* sys557eepromChecksumSet - set an Intel 825xx EEPROM checksum** This routine computes and writes the checksum for the serial EEPROM* on an Intel 82557, 82558, 82559, or 82562 device associated with the* specified END driver <unit> number.** RETURNS: N/A** NOMANUAL*/LOCAL void sys557eepromChecksumSet    (    int    unit           /* END driver unit number */    )    {    int    ix;    UINT16 sum = 0;    for (ix = 0; ix < EE_SIZE - 1; ix++)         {        sum += sys557eepromRead (unit, ix);        }      sys557eepromWrite (unit, EE_SIZE - 1, (EE_CHECKSUM - sum));    }/********************************************************************************* sys557mdioRead - read from 82557 PCI ethernet Media Data Interface (MDI)** RETURNS: The value read.** NOMANUAL*/LOCAL UINT16 sys557mdioRead    (    int    unit,           /* END driver unit number */    int    phyId,          /* PHY ID (PHY address) */    int    location        /* location to read (PHY register address) */    )    {    UINT16 iobase  = (feiPciResources[unit].bar[1]);    int    timeout = (64 * 4);  /* < 64 usec. to complete, typ 27 ticks */    int    mdi;    /* send command to MDI register and poll for completion */    sysOutLong (iobase + SCB_MDI, MDI_COMMAND_RD(phyId, location));    do  {        sysDelay ();        /* delay for one IO READ cycle */        mdi = sysInLong (iobase + SCB_MDI);        if (--timeout < 0)            printf ("sys557mdioRead() timed out with MDI = %8.8x.\n", mdi);        } while (!MDI_READY_SET(mdi));    return MDI_DATA_GET(mdi);    }/********************************************************************************* sys557mdioWrite - write to 82557 PCI ethernet Media Data Interface (MDI)** RETURNS: The value written.** NOMANUAL*/LOCAL UINT16 sys557mdioWrite    (    int    unit,            /* END driver unit number */    int    phyId,           /* PHY ID (PHY address ) */    int    location,        /* location to write (PHY registe address) */    UINT16 value            /* value to write */    )    {    UINT16 iobase  = (feiPciResources[unit].bar[1]);    int    timeout = (64 * 4);  /* < 64 usec. to complete, typ 27 ticks */    int    mdi;    /* send command to MDI register and poll for completion */    sysOutLong (iobase + SCB_MDI, MDI_COMMAND_WR(phyId, location, value));    do  {        sysDelay ();        /* delay for one IO READ cycle */        mdi = sysInLong (iobase + SCB_MDI);        if (--timeout < 0)            printf ("sys557mdioWrite() timed out with MDI = %8.8x.\n", mdi);        } while (!MDI_READY_SET(mdi));    return MDI_DATA_GET(mdi);    }/********************************************************************************* sys557Show - show 82557 PCI ethernet device configuration ** This routine shows Intel 82557 and compatible device configuration.** RETURNS: N/A*/void sys557Show    (    int        unit        /* END driver unit number */    )    {    UINT16     ioBase;    UINT32     memBase;    UINT32     flashBase = NONE;    UCHAR      etheraddr[6];    int        ix;    int        iy;    PCI_BOARD_RESOURCE const * pRsrc;    FEI_RESOURCE const *       pReso;    if (unit >= feiUnits)        {        printf ("none\n");        return;        }    pRsrc     = &feiPciResources [unit];    pReso     = (FEI_RESOURCE *)(pRsrc->pExtended);    ioBase    = (UINT16)(pRsrc->bar[1]);    memBase   = (pRsrc->bar[0]);    flashBase = (pRsrc->bar[2]);    for (ix = 0, iy = 0; ix < 3; ix++)         {        etheraddr[iy++] = pReso->eeprom[ix];        etheraddr[iy++] = pReso->eeprom[ix] >> 8;        }    printf ("i8255x(%d): Intel EtherExpress Pro 10/100 at %#3x ", unit, ioBase);    for (ix = 0; ix < 5; ix++)        printf ("%2.2X:", etheraddr[ix]);    printf ("%2.2X\n", etheraddr[ix]);    printf ("CSR mem base address = %x, Flash mem base address = %x\n\n",             memBase, flashBase);    printf ("PCI bus no. = %x, device no. = %x, function no. = %x, IRQ = %d\n",            pRsrc->pciBus, pRsrc->pciDevice, pRsrc->pciFunc, pRsrc->irq);    printf ("PCI Device ID = 0x%x\n\n", pRsrc->deviceID);    if (pReso->eeprom[3] & 0x03)        printf ("Receiver lock-up bug exists -- enabling work-around.\n");    printf ("Board assembly %4.4x%2.2x-%3.3d, Physical connectors present:",        pReso->eeprom[8], pReso->eeprom[9]>>8, pReso->eeprom[9] & 0xff);    for (ix = 0; ix < 4; ix++)        if (pReso->eeprom[5] & (1 << ix))            printf ("%s", connectors [ix]);    printf ("\nPrimary interface chip %s PHY #%d.\n",        phyNames[(pReso->eeprom[6]>>8)&15], pReso->eeprom[6] & 0x1f);    if (pReso->eeprom[7] & 0x0700)        printf ("Secondary interface chip %s.\n",                 phyNames[(pReso->eeprom[7]>>8)&7]);    /* We do not show PHY specific register info at this time. */#if  FALSE    for (ix = 0; ix < 2; ix++)        printf ("MDIO register %d is %4.4x.\n",                ix, sys557mdioRead (unit, pReso->eeprom[6] & 0x1f, ix));    for (ix = 5; ix < 7; ix++)        printf ("MDIO register %d is %4.4x.\n",                ix, sys557mdioRead (unit, pReso->eeprom[6] & 0x1f, ix));    printf ("MDIO register %d is %4.4x.\n",            25, sys557mdioRead (unit, pReso->eeprom[6] & 0x1f, 25));#endif  /* FALSE */    if (pReso->timeout < 0)         {                /* Test optimized out. */        printf ("Self test failed, status %8.8x:\n"                " Failure to initialize the i8255x.\n"                " Verify that the card is a bus-master capable slot.\n",                pReso->pResults[1]);        }    else         {        printf ("General self-test: %s.\n"                " Serial sub-system self-test: %s.\n"                " Internal registers self-test: %s.\n"                " ROM checksum self-test: %s (%#8.8x).\n",                pReso->pResults[1] & 0x1000 ? "failed" : "passed",                pReso->pResults[1] & 0x0020 ? "failed" : "passed",                pReso->pResults[1] & 0x0008 ? "failed" : "passed",                pReso->pResults[1] & 0x0004 ? "failed" : "passed",                pReso->pResults[0]);        }    }/********************************************************************************* sysFeiDevToType - convert PCI Vendor and Device IDs to a device type** Given <vendorId>, <deviceId>, and <revisionId> values read from PCI Vendor* and Device ID registers in PCI configuration space, this routine will* attempt to map the IDs to an 8255x device type value defined in this file.** RETURNS:* A board type value which will be one of** .IP* TYPE_I82557_PCI* .IP* TYPE_I82559_PCI* .IP* TYPE_I82559ER_PCI* .IP* TYPE_I82562_PCI* .IP* TYPE_I82562ET_PCI* .LP** NOTE* The TYPE_I82562ET_PCI constant is used specifically to identify the* Intel 82562ET LAN controller integrated in i82801BA (ICH2) and i82801BAM* (ICH2-M) devices.  As noted in the Specification Update for these* devices, document number 298242-015, the PCI Revsion ID values for the* integrated LAN controller are 1 and 3.** BOARD_TYPE_UNKNOWN will be returned if the Device ID does not map to* a supported board type.** NOMANUAL*/LOCAL UINT32 sysFeiDevToType    (    UINT32 vendorId,    /* specifies a PCI Vendor ID value */    UINT32 deviceId,    /* specifies a PCI Device ID value */    UINT8  revisionId   /* specifies a PCI Revision ID value */    )    {    /* At the moment, we are only supporting vendor Intel */    if (vendorId == FEI_VENDORID_INTEL)        {        switch (deviceId)            {            case FEI_DEVICEID_i82557:                return (TYPE_I82557_PCI);            case FEI_DEVICEID_i82559:            case FEI_DEVICEID_i82559_I82845:                  return (TYPE_I82559_PCI);            case FEI_DEVICEID_i82559ER:                return (TYPE_I82559ER_PCI);            case FEI_DEVICEID_i82562:                if ((revisionId == 1) || (revisionId == 3))                    {                    return (TYPE_I82562ET_PCI);                    }                return (TYPE_I82562_PCI);            default:                break;            }        }    return (BOARD_TYPE_UNKNOWN);    }#endif /* INCLUDE_FEI_END */

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美日韩一卡二卡| 欧美国产日韩亚洲一区| 欧美成人官网二区| 亚洲天堂免费看| 狠狠网亚洲精品| 色94色欧美sute亚洲线路二| 2023国产一二三区日本精品2022| 亚洲免费观看高清完整版在线观看| 久久国产夜色精品鲁鲁99| 91捆绑美女网站| 国产精品入口麻豆原神| 美女性感视频久久| 欧美久久婷婷综合色| 亚洲激情av在线| 成人一级片网址| 久久综合999| 久久精品噜噜噜成人av农村| 欧美日韩色一区| 亚洲伊人伊色伊影伊综合网| 99热99精品| 亚洲欧洲99久久| 成人午夜视频网站| 国产清纯白嫩初高生在线观看91| 精品一区二区在线看| 欧美亚洲丝袜传媒另类| 一区二区三区免费在线观看| 99在线精品一区二区三区| 国产精品色眯眯| 99热精品一区二区| 亚洲蜜臀av乱码久久精品| 99久久国产综合精品女不卡| 一色桃子久久精品亚洲| 不卡视频在线观看| 中文字幕亚洲一区二区va在线| 成人影视亚洲图片在线| 国产精品久久久久久久久免费樱桃 | 日韩欧美一二三| 蜜臀av一级做a爰片久久| 91精品国产91久久久久久一区二区 | 日韩欧美一区在线观看| 美女网站视频久久| 欧美大片在线观看一区| 狠狠色丁香久久婷婷综| 国产欧美日韩中文久久| 91视视频在线观看入口直接观看www | 不卡的av在线播放| 亚洲蜜臀av乱码久久精品| 欧美三级中文字幕在线观看| 视频一区二区三区入口| 日韩久久久久久| 波多野洁衣一区| 亚洲综合色婷婷| 日韩视频永久免费| 丁香激情综合五月| 亚洲青青青在线视频| 6080午夜不卡| 成人夜色视频网站在线观看| 夜夜亚洲天天久久| 精品国产一区二区国模嫣然| 99精品国产一区二区三区不卡| 亚洲精品亚洲人成人网| 欧美一区二区三区在| 国产乱码精品一区二区三区av| 亚洲色图制服诱惑 | 激情五月婷婷综合网| 亚洲欧美一区二区三区久本道91 | 欧美色大人视频| 伦理电影国产精品| 亚洲天堂av一区| 欧美变态口味重另类| 91麻豆国产福利精品| 精品在线亚洲视频| 亚洲综合色区另类av| 久久久久久久久久久电影| 日本福利一区二区| 国产91丝袜在线观看| 亚洲狠狠爱一区二区三区| 91网站最新网址| 美腿丝袜在线亚洲一区| 欧美国产日韩一二三区| 欧美美女视频在线观看| 精品一区二区日韩| 亚洲免费看黄网站| 久久日韩精品一区二区五区| 色视频成人在线观看免| 日本麻豆一区二区三区视频| 国产精品视频你懂的| 欧美一级夜夜爽| 色又黄又爽网站www久久| 麻豆国产欧美一区二区三区| 亚洲a一区二区| 国产精品视频在线看| 91精品国产综合久久婷婷香蕉| 成人污视频在线观看| 日本亚洲三级在线| 亚洲激情图片一区| 国产拍揄自揄精品视频麻豆| 欧美电影免费观看高清完整版在| 99国产精品久久久久久久久久久| 丝袜亚洲另类丝袜在线| 中文字幕在线免费不卡| 久久综合久久鬼色| 欧美一三区三区四区免费在线看| av亚洲产国偷v产偷v自拍| 麻豆中文一区二区| 亚洲成av人片在线观看| 亚洲图片欧美激情| 亚洲色欲色欲www在线观看| 久久午夜免费电影| 欧美一区二区三区人| 91在线观看视频| 国产成人免费在线视频| 免费不卡在线观看| 亚洲一二三区在线观看| 午夜婷婷国产麻豆精品| 日韩1区2区日韩1区2区| 亚洲欧美日韩在线| 国产日韩欧美精品在线| 精品捆绑美女sm三区| 国产欧美综合在线| 欧美日韩视频在线观看一区二区三区 | 国产麻豆欧美日韩一区| 亚洲高清免费观看高清完整版在线观看 | 美女视频一区在线观看| 亚洲一区二区高清| 亚洲国产欧美在线人成| 亚洲高清免费观看高清完整版在线观看| 国产精品不卡在线观看| 国产午夜亚洲精品理论片色戒| 日韩欧美的一区二区| 欧美一级艳片视频免费观看| 在线成人午夜影院| 91蜜桃免费观看视频| 91国偷自产一区二区开放时间| 波多野结衣中文字幕一区| 成人v精品蜜桃久久一区| 成人性生交大片免费看中文网站 | 亚洲动漫第一页| 五月婷婷色综合| 蜜臀精品一区二区三区在线观看| 日本va欧美va欧美va精品| 精久久久久久久久久久| 国产精品自拍av| 91在线观看美女| 欧美午夜寂寞影院| 日韩精品一区二区三区四区| 欧美不卡一二三| 亚洲免费在线视频一区 二区| 亚洲五码中文字幕| 奇米精品一区二区三区四区 | 国产精品乱码一区二区三区软件| 国产精品嫩草久久久久| 亚洲卡通动漫在线| 欧美国产成人在线| 午夜电影久久久| 九九国产精品视频| 97精品久久久久中文字幕| 欧美视频一区二区三区| 精品区一区二区| 中文字幕巨乱亚洲| 日韩影院免费视频| 从欧美一区二区三区| 在线观看91精品国产入口| 91精品在线一区二区| 久久精品无码一区二区三区| 一区二区在线观看免费| 精品午夜久久福利影院| 99久久99久久精品免费看蜜桃 | 欧美日韩久久久久久| 欧美一区二区三区四区高清| 国产精品久久久久久久浪潮网站| 亚洲第一主播视频| 成人一区二区三区| 日韩写真欧美这视频| 综合欧美亚洲日本| 国产精品自拍一区| 91麻豆精品国产91久久久使用方法 | 精品久久久久一区| 中文字幕中文字幕一区二区| 一区二区三区影院| 黑人巨大精品欧美一区| 欧美视频完全免费看| 国产精品不卡一区| 国产在线观看一区二区| 在线亚洲+欧美+日本专区| 国产日韩欧美综合在线| 婷婷久久综合九色综合绿巨人| 久久精品国产亚洲aⅴ| 欧美精品日日鲁夜夜添| 亚洲人吸女人奶水| 成人午夜又粗又硬又大| 精品少妇一区二区三区视频免付费 | 777a∨成人精品桃花网| 亚洲综合在线第一页| 成人视屏免费看| 久久嫩草精品久久久精品| 日韩综合一区二区| 日本道在线观看一区二区| 亚洲少妇30p| av电影在线不卡|