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

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

?? sysend.c.bak

?? INTEL IXP425的VXWORKS BSP
?? BAK
?? 第 1 頁 / 共 3 頁
字號:
** sys557IntAck - acknowledge an 82557 interrupt** This routine performs any 82557 interrupt acknowledge that may be* required.  This typically involves an operation to some interrupt* control hardware.** This routine gets called from the 82557 driver's interrupt handler.** This routine assumes that the PCI configuration information has already* been setup.** RETURNS: OK, or ERROR if the interrupt could not be acknowledged.*/LOCAL STATUS sys557IntAck    (    int	unit		/* unit number */    ){    FEI_RESOURCE * pReso = &feiResources [unit];    switch (pReso->boardType)	{	case PRO100B:		/* handle PRO100B LAN Adapter */        case INBUSINESS:        case XX82559ER:	    /* no addition work necessary for the PRO100B */	    break;	default:	    return (ERROR);	}    return (OK);    }/********************************************************************************* sys557IntEnable - enable 82557 interrupts** This routine enables 82557 interrupts.  This may involve operations on* interrupt control hardware.** The 82557 driver calls this routine throughout normal operation to terminate* critical sections of code.** This routine assumes that the PCI configuration information has already* been setup.** RETURNS: OK, or ERROR if interrupts could not be enabled.*/LOCAL STATUS sys557IntEnable    (    int	unit		/* unit number */    ){    FEI_RESOURCE * pReso = &feiResources [unit];    switch (pReso->boardType)	{	case PRO100B:		/* handle PRO100B LAN Adapter */        case INBUSINESS:        case XX82559ER:            intEnable (pReso->irq);	    break;	default:	    return (ERROR);	}    return (OK);    }/********************************************************************************* sys557IntDisable - disable 82557 interrupts** This routine disables 82557 interrupts.  This may involve operations on* interrupt control hardware.** The 82557 driver calls this routine throughout normal operation to enter* critical sections of code.** This routine assumes that the PCI configuration information has already* been setup.** RETURNS: OK, or ERROR if interrupts could not be disabled.*/LOCAL STATUS sys557IntDisable    (    int	unit		/* unit number */    ){    FEI_RESOURCE * pReso = &feiResources [unit];    switch (pReso->boardType)	{	case PRO100B:		/* handle PRO100B LAN Adapter */        case INBUSINESS:        case XX82559ER:            intDisable (pReso->irq); 	    break;	default:	    return (ERROR);	}    return (OK);    }/********************************************************************************* sys557eepromRead - read a word from the 82557 EEPROM** RETURNS: the EEPROM data word read in.*/LOCAL UINT16 sys557eepromRead    (    int	unit,		/* unit number */    int	location	/* address of word to be read */    ){    UINT32 iobase = feiResources[unit].iobaseCsr;    UINT16 retval = 0;    UINT16 dataval;    UINT32 eeaddr = iobase + SCB_EEPROM;    int cmdlen = 27;    int readcmd = EE_CMD_READ << 22;    readcmd = readcmd | (location << 16);    /*Enable EEPROM*/    sysPciOutWord(eeaddr, EE_ENB | EE_SK);        do    {	dataval = (readcmd & (1 << cmdlen)) ?  EE_WRITE_1 : EE_WRITE_0;	sysPciOutWord(eeaddr, dataval);		sysDelay();	sysPciOutWord(eeaddr, dataval | EE_SK);	sysDelay();	dataval=sysInWord(eeaddr);	retval = (retval << 1) | ((dataval & EE_DO) ? 1 : 0);     } while(cmdlen-- > 0);    sysPciOutWord(eeaddr, EE_ENB);    sysPciOutWord(eeaddr, EE_ENB & ~EE_CS);    return retval;    #if 0    sysPciOutWord (iobase + SCB_EEPROM, EE_CS);	/* enable EEPROM */    /* write the READ opcode */    for (ix = EE_CMD_BITS - 1; ix >= 0; ix--)	{        dataval = (EE_CMD_READ & (1 << ix)) ? EE_DI : 0;        sysPciOutWord (iobase + SCB_EEPROM, EE_CS | dataval);        sysDelay ();	/* delay for one I/O READ cycle */        sysPciOutWord (iobase + SCB_EEPROM, EE_CS | dataval | EE_SK);        sysDelay ();	/* delay for one I/O READ cycle */        sysPciOutWord (iobase + SCB_EEPROM, EE_CS | dataval);        sysDelay ();	/* delay for one I/O READ cycle */        }    /* write the location */    for (ix = EE_ADDR_BITS - 1; ix >= 0; ix--)	{        dataval = (location & (1 << ix)) ? EE_DI : 0;        sysPciOutWord (iobase + SCB_EEPROM, EE_CS | dataval);        sysDelay ();	/* delay for one I/O READ cycle */        sysPciOutWord (iobase + SCB_EEPROM, EE_CS | dataval | EE_SK);        sysDelay ();	/* delay for one I/O READ cycle */        sysPciOutWord (iobase + SCB_EEPROM, EE_CS | dataval);        sysDelay ();	/* delay for one I/O READ cycle */	dummy = sysInWord (iobase + SCB_EEPROM);        }    if ((dummy & EE_DO) == 0)		/* dummy read */	;    /* read the data */    for (ix = EE_DATA_BITS - 1; ix >= 0; ix--)	{        sysPciOutWord (iobase + SCB_EEPROM, EE_CS | EE_SK);        sysDelay ();	/* delay for one I/O READ cycle */        retval = (retval << 1) |	         ((sysInWord (iobase + SCB_EEPROM) & EE_DO) ? 1 : 0);        sysPciOutWord (iobase + SCB_EEPROM, EE_CS);        sysDelay ();	/* delay for one I/O READ cycle */        }    sysPciOutWord (iobase + SCB_EEPROM, 0x00);	/* disable EEPROM */    return (retval);#endif    }/********************************************************************************* sys557mdioRead - read MDIO** RETURNS: read value*/LOCAL UINT32 sys557mdioRead    (    int	unit,		/* unit number */    int phyId,		/* PHY ID */    int location	/* location to read */    ){    UINT32 iobase = feiResources[unit].iobaseCsr;    int timeout   = 64*4;	/* <64 usec. to complete, typ 27 ticks */    int val;    sysPciOutLong (iobase + SCB_MDI, 0x08000000 | (location<<16) | (phyId<<21));    do  {        sysDelay ();	/* delay for one I/O READ cycle */        val = sysInLong (iobase + SCB_MDI);        if (--timeout < 0)            printf ("sys557mdioRead() timed out with val = %8.8x.\n", val);        } while (! (val & 0x10000000));    return (val & 0xffff);    }/********************************************************************************* sys557mdioWrite - write MDIO** RETURNS: write value*/LOCAL UINT32 sys557mdioWrite    (    int unit,		/* unit number */    int phyId,		/* PHY ID */    int location,	/* location to write */    int value		/* value to write */    ){    UINT32 iobase = feiResources[unit].iobaseCsr;    int timeout   = 64*4;	/* <64 usec. to complete, typ 27 ticks */    int val;    sysPciOutLong (iobase + SCB_MDI,		0x04000000 | (location<<16) | (phyId<<21) | value);    do  {        sysDelay ();	/* delay for one I/O READ cycle */        val = sysInLong (iobase + SCB_MDI);        if (--timeout < 0)            printf ("sys557mdioWrite() timed out with val = %8.8x.\n", val);        } while (! (val & 0x10000000));    return (val & 0xffff);    }/********************************************************************************* sys557Show - shows 82557 configuration** This routine shows the (Intel Pro Express 100) configuration** RETURNS: N/A*/void sys557Show    (    int	unit		/* unit number */    ){    FEI_RESOURCE * pReso = &feiResources [unit];    UINT32 iobase       = pReso->iobaseCsr;    UCHAR etheraddr[6];    int ix;    int iy;    if (unit > IXP425_PCI_MAX_DEV)	{	printf ("Illegal unit number %d\n", unit);	return;	}    if (pReso->boardType == UNKNOWN)	{	printf ("Unit %d not an FEI device\n", unit);	return;	}    for (ix = 0, iy = 0; ix < 3; ix++)	{        etheraddr[iy++] = pReso->eeprom[ix];        etheraddr[iy++] = pReso->eeprom[ix] >> 8;        }    printf ("fei%d: Intel EtherExpress Pro 10/100 at %#8x ", 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",	    pReso->membaseCsr, pReso->membaseFlash);    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",	phys[(pReso->eeprom[6]>>8)&15], pReso->eeprom[6] & 0x1f);    if (pReso->eeprom[7] & 0x0700)	printf ("Secondary interface chip %s.\n",		phys[(pReso->eeprom[7]>>8)&7]);#if	FALSE  /* we don't show PHY specific info at this time */    /* ToDo: Read and set PHY registers through MDIO port. */    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 82557.\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]);        }    }#endif /* INCLUDE_FEI82557END *//********************************************************************************* sysDelay - a small delay**/void sysDelay (void)    {    sysMicroDelay(PCI_CONFIG_DELAY);     return;    }/******************************************************************************** sys557EndPciToPhys - translate a Pci address to a physical address** This function converts a Pci address to a physical address. This only works* for PCI Memory space.** RETURNS: the physical adddress*/UINT32 sys557EndPciToPhys    (    int		unit,    UINT32      PciAddr /* PCI address */    )    {    return((UINT32)sysPciToPhys((void *)PciAddr));    }/******************************************************************************** sys557EndPhysToPci - translate a physical address to a Pci address** This function converts a physical address to a Pci address. This only works* for PCI Memory space.** RETURNS: the Pci adddress*/UINT32 sys557EndPhysToPci    (    int		unit,    UINT32      PhysAddr        /* Physical address */    )    {    return ((UINT32)sysPhysToPci((void *)PhysAddr));    }#endif /* INCLUDE_END */

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久久99精品免费观看| 日韩二区在线观看| 91精品国产色综合久久久蜜香臀| 亚洲va韩国va欧美va精品| 中文字幕中文字幕一区二区 | 亚洲午夜日本在线观看| 亚洲色图色小说| 久久久精品中文字幕麻豆发布| 欧美一区二区视频在线观看| 91麻豆精品国产| 精品久久人人做人人爱| 久久尤物电影视频在线观看| 国产日韩av一区| 中文字幕一区二区三区蜜月| 亚洲三级小视频| 午夜视频一区二区| 久久er精品视频| 成人成人成人在线视频| 91亚洲资源网| 欧美日本乱大交xxxxx| 日韩一区二区三区在线| 国产人久久人人人人爽| 中文字幕日韩一区| 视频一区视频二区中文字幕| 激情深爱一区二区| 色综合中文综合网| 国产资源精品在线观看| 国产91精品一区二区麻豆网站| 成人av影视在线观看| 在线日韩av片| 久久综合久久综合亚洲| 悠悠色在线精品| 国产在线视频不卡二| jlzzjlzz欧美大全| 777精品伊人久久久久大香线蕉| 久久综合网色—综合色88| 国产精品免费人成网站| 日本欧美在线看| 不卡av在线网| 日韩女优av电影在线观看| 国产精品女主播在线观看| 亚洲国产综合色| 国产一区二区三区四区五区美女 | 欧美一卡在线观看| 中文字幕亚洲成人| 九九国产精品视频| 欧美裸体一区二区三区| 国产精品久久久久久福利一牛影视 | 久久综合狠狠综合久久激情| 亚洲最色的网站| 成人免费福利片| 日韩午夜激情av| 亚洲综合视频在线观看| 成人精品免费网站| 2021国产精品久久精品 | 精品日韩一区二区三区| 亚洲高清不卡在线观看| 91一区二区在线观看| 欧美国产欧美亚州国产日韩mv天天看完整| 日韩精品一二三| 91九色02白丝porn| 亚洲区小说区图片区qvod| 国产麻豆视频精品| 久久这里只有精品6| 麻豆国产精品官网| 日韩欧美国产一区二区在线播放| 亚洲成人第一页| 在线看一区二区| 亚洲黄色录像片| 色综合中文字幕国产| 中文字幕在线观看不卡| 懂色一区二区三区免费观看| 久久九九久久九九| 丰满亚洲少妇av| 国产丝袜在线精品| 豆国产96在线|亚洲| 亚洲国产精品ⅴa在线观看| 国产福利一区二区| 久久久久久久久99精品| 国产精品影音先锋| 国产精品免费久久久久| 成人黄色综合网站| 国产精品私人自拍| www.成人在线| 一区二区三区在线播| 欧美视频第二页| 青青草97国产精品免费观看| 91精品国产91热久久久做人人| 日韩av不卡在线观看| 日韩免费福利电影在线观看| 国产在线精品免费| 中文字幕在线观看一区| 欧美特级限制片免费在线观看| 日韩国产欧美在线视频| 久久青草国产手机看片福利盒子| 国产乱码精品一区二区三区忘忧草 | 日韩一区精品视频| 精品捆绑美女sm三区| 成人深夜视频在线观看| 亚洲精品乱码久久久久| 91精品国产综合久久福利软件 | 亚洲成在线观看| 日韩欧美在线综合网| 岛国一区二区在线观看| 亚洲免费成人av| 欧美成人三级在线| 国产盗摄女厕一区二区三区| 一区二区三区四区国产精品| 欧美成人官网二区| 在线亚洲人成电影网站色www| 日本中文在线一区| 1区2区3区精品视频| 日韩欧美专区在线| 91麻豆视频网站| 国产在线精品一区二区不卡了| 亚洲欧美偷拍卡通变态| 精品国产91九色蝌蚪| 在线免费观看不卡av| 成人自拍视频在线观看| 免费成人在线播放| 亚洲精品中文字幕在线观看| 精品国产91乱码一区二区三区 | 成人一区在线观看| 免费国产亚洲视频| 亚洲国产三级在线| 中文无字幕一区二区三区| 欧美一二区视频| 日本高清无吗v一区| 国产v综合v亚洲欧| 蜜臀国产一区二区三区在线播放| 亚洲精品国产一区二区精华液| 久久久精品综合| 精品少妇一区二区三区在线播放 | 中文字幕五月欧美| 久久久久国产精品厨房| 91精选在线观看| 欧美色区777第一页| 成人av在线网| 成人激情校园春色| 成人污视频在线观看| 国产伦精品一区二区三区免费迷| 人人精品人人爱| 日本中文字幕一区二区有限公司| 亚洲国产视频一区| 午夜久久久久久电影| 一个色妞综合视频在线观看| 亚洲视频网在线直播| 亚洲视频狠狠干| 亚洲乱码精品一二三四区日韩在线| 国产婷婷一区二区| 欧美韩国日本一区| 国产精品久久久久桃色tv| 亚洲国产电影在线观看| 国产精品久久网站| 亚洲乱码国产乱码精品精的特点| 国产精品久久久久久久久免费相片| 欧美国产日韩一二三区| 中文字幕不卡的av| 亚洲男女一区二区三区| 亚洲自拍欧美精品| 日韩电影免费在线观看网站| 日韩高清在线观看| 国产一区二区三区四| 岛国精品一区二区| 一本色道a无线码一区v| 欧美在线观看视频在线| 日韩一区二区在线播放| 精品电影一区二区三区| 中文一区二区完整视频在线观看| 亚洲人成7777| 日韩精品电影在线| 国产美女久久久久| 91在线视频免费观看| 欧美久久久一区| 久久你懂得1024| 亚洲视频每日更新| 男女男精品视频| 国产91精品露脸国语对白| 色婷婷av一区二区三区gif| 在线成人av网站| 亚洲国产精品av| 日韩福利电影在线| 大白屁股一区二区视频| 色欧美片视频在线观看| 日韩视频一区二区在线观看| 国产无一区二区| 丝袜国产日韩另类美女| 丁香五精品蜜臀久久久久99网站| 一本久久综合亚洲鲁鲁五月天 | 粉嫩嫩av羞羞动漫久久久| 在线中文字幕不卡| 精品免费日韩av| 亚洲美女淫视频| 久草在线在线精品观看| 91猫先生在线| 国产人久久人人人人爽| 日本亚洲最大的色成网站www| 不卡av在线网| 337p日本欧洲亚洲大胆色噜噜| 亚洲一区二区三区四区在线|