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

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

?? rtlmiiapi.c

?? INTEL IXP425的VXWORKS BSP
?? C
?? 第 1 頁 / 共 2 頁
字號:
    switch( rtl8305port)     {    	case 0:	regval&= ~(RTL_PVID_BIT_WITH <<RTL_PORT0_PVID_BIT_SHL);			regval&=pvid<<RTL_PORT0_PVID_BIT_SHL;				break;	case 1: 	regval&= ~(RTL_PVID_BIT_WITH <<RTL_PORT1_PVID_BIT_SHL);			regval&=pvid<<RTL_PORT1_PVID_BIT_SHL;				break;	case 2:	regval&= ~(RTL_PVID_BIT_WITH <<RTL_PORT2_PVID_BIT_SHL);			regval&=pvid<<RTL_PORT2_PVID_BIT_SHL;				break;	case 3:	regval&= ~(RTL_PVID_BIT_WITH <<RTL_PORT3_PVID_BIT_SHL);			regval&=pvid<<RTL_PORT3_PVID_BIT_SHL;				break;	case 4:	regval&= ~(RTL_PVID_BIT_WITH <<RTL_PORT4_PVID_BIT_SHL);			regval&=pvid<<RTL_PORT4_PVID_BIT_SHL;				break;	default:			return ERR_PORT_ERROR;    }       realtekMiiWriteRtn(port,phyAddr, vlanReg, regval);    return realtekSoftReset(port);}/************************************************************ * * Configure the rtl8305  vlan table  *  */IxEthAccStatusrealtekVlanSetup(UINT32 port, UINT16 vid, UINT8 portBitmap){    UINT16 regval=0;        UINT8 phyAddr=0;    UINT8 vlanReg =0;	    if(port!=PORTB)  return ERR_PORT_ERROR;    if(vid >= 5) return ERR_VID_ERROR;    phyAddr = RTL_VLAN_MEMBER_REGISTER[vid].PHY_address;    vlanReg = RTL_VLAN_MEMBER_REGISTER[vid].VLAN_register;    realtekMiiReadRtn(port, phyAddr,vlanReg, &regval);    realtekMiiReadRtn(port, phyAddr,vlanReg, &regval);    portBitmap &= RTL_VLAN_MEMBER_BIT_WITH;    switch(vid)     {    	case VLANA:  regval &=~(RTL_VLAN_MEMBER_BIT_WITH <<RTL_VLANA_MEMBER_BIT_SHL);		       	regval &= portBitmap <<RTL_VLANA_MEMBER_BIT_SHL;				break;	case VLANB:	regval &=~(RTL_VLAN_MEMBER_BIT_WITH <<RTL_VLANB_MEMBER_BIT_SHL);		       	regval &= portBitmap <<RTL_VLANB_MEMBER_BIT_SHL;				break;	case VLANC:	regval &=~(RTL_VLAN_MEMBER_BIT_WITH <<RTL_VLANC_MEMBER_BIT_SHL);		       	regval &= portBitmap <<RTL_VLANC_MEMBER_BIT_SHL; 				break;	case VLAND:	regval &=~(RTL_VLAN_MEMBER_BIT_WITH <<RTL_VLAND_MEMBER_BIT_SHL);		       	regval &= portBitmap <<RTL_VLAND_MEMBER_BIT_SHL;				break;	case VLANE:	regval &=~(RTL_VLAN_MEMBER_BIT_WITH <<RTL_VLANE_MEMBER_BIT_SHL);		       	regval &= portBitmap <<RTL_VLANE_MEMBER_BIT_SHL;				break;	default:			return ERR_VID_ERROR;     }	    realtekMiiWriteRtn(port,phyAddr, vlanReg, regval);    return realtekSoftReset(port);}/************************************************************ * * Configure the rtl8305  vlan disable or enable  *  */IxEthAccStatusrealtekVlanCtrl(UINT32 port,BOOL VLANEnable){    UINT16 regval=0;        UINT8 phyAddr=0;    UINT8 vlanReg =0;    if(port!=PORTB)  return ERR_PORT_ERROR;    phyAddr = RTL_VLAN_CTRL_REGISTER.PHY_address;    vlanReg = RTL_VLAN_CTRL_REGISTER.VLAN_register;    realtekMiiReadRtn(port, phyAddr,vlanReg, &regval);    realtekMiiReadRtn(port, phyAddr,vlanReg, &regval);    if(VLANEnable)     {	regval &=~(RTL_VLAN_CTRL_DisableVLAN_BIT|RTL_VLAN_CTRL_DISTagAware_BIT|RTL_VLAN_CTRL_DISMemFilter_BIT);    }    else   {	regval = 0xffff;   }	    realtekMiiWriteRtn(port,phyAddr, vlanReg, regval);    return realtekSoftReset(port);}/************************************************************ * * Configure the rtl8305  priority disable or enable  *  */IxEthAccStatusrealtekPriorityCtrl(UINT32 port,UINT16 CtrlBit,BOOL PriorityEnable){    UINT16 regval=0;        UINT8 phyAddr=0;    UINT8 Reg =0;    if(port!=PORTB)  return ERR_PORT_ERROR;    phyAddr = RTL_PRIORITY_CTRL_REGISTER.PHY_address;    Reg = RTL_PRIORITY_CTRL_REGISTER.VLAN_register;    realtekMiiReadRtn(port, phyAddr,Reg, &regval);    realtekMiiReadRtn(port, phyAddr,Reg, &regval);	    if(PriorityEnable)     {	regval &=~CtrlBit;    }    else   {	regval |= CtrlBit;   }	    realtekMiiWriteRtn(port,phyAddr, Reg, regval);    return realtekSoftReset(port);}/************************************************************ * * issue  the rtl8305  software reset  command *  */IxEthAccStatusrealtekSoftReset(UINT32 port){    UINT16 regval=0;        UINT8 phyAddr=0;    UINT8 Reg =0;    if(port!=PORTB)  return ERR_PORT_ERROR;    phyAddr = RTL_PORT_CTRL_REGISTER.PHY_address;    Reg = RTL_PORT_CTRL_REGISTER.VLAN_register;    realtekMiiReadRtn(port, phyAddr,Reg, &regval);    realtekMiiReadRtn(port, phyAddr,Reg, &regval);    regval |=RTL_PORT_CTRL_SOFTRESET_BIT;	    return realtekMiiWriteRtn(port,phyAddr, Reg, regval);}/***************************************************************** * *  Link state query functions */IxEthAccStatusrealtekMiiLinkStatus(UINT32 port,UINT32 phyAddr, 		      BOOL *linkUp,		      BOOL *speed100, 		      BOOL *fullDuplex,		      BOOL *autoneg){    UINT16 regval;    /*Need to read the register twice here to flush PHY*/    realtekMiiReadRtn(port,phyAddr,  IX_ETH_ACC_MII_STAT_REG, &regval);    realtekMiiReadRtn(port,phyAddr,  IX_ETH_ACC_MII_STAT_REG, &regval);    if((regval & IX_ETH_ACC_MII_SR_LINK_STATUS) != 0)    {	*linkUp = TRUE;    }    else    {	*linkUp = FALSE;    }    if((regval & IX_ETH_ACC_MII_SR_TX_FULL_DPX) != 0)    {	*speed100 = TRUE;	*fullDuplex = TRUE;    }    if((regval & IX_ETH_ACC_MII_SR_TX_HALF_DPX) != 0)    {	*speed100 = TRUE;	*fullDuplex = FALSE;    }    if((regval & IX_ETH_ACC_MII_SR_10T_FULL_DPX) != 0)    {	*speed100 = FALSE;	*fullDuplex = TRUE;    }    if((regval & IX_ETH_ACC_MII_SR_10T_HALF_DPX) != 0)    {	*speed100 = FALSE;	*fullDuplex = FALSE;    }	    if(((regval & IX_ETH_ACC_MII_SR_AUTO_NEG) != 0)		&& ((regval & IX_ETH_ACC_MII_SR_AUTO_SEL)!=0))    {	*autoneg = TRUE;    }    else    {	*autoneg = FALSE;    }        return IX_ETH_ACC_SUCCESS;   }IxEthAccStatusrealtekMiiShow (UINT32 port,UINT32 phyAddr){    UINT16 regval;    /*Need to read the register twice here to flush PHY*/    if(realtekMiiReadRtn(port, phyAddr,  IX_ETH_ACC_MII_STAT_REG, &regval)        != IX_ETH_ACC_SUCCESS)    {	return IX_ETH_ACC_FAIL;    }   realtekMiiReadRtn(port,phyAddr,  IX_ETH_ACC_MII_STAT_REG, &regval);    printf("PHY Status: \n");    if((regval & IX_ETH_ACC_MII_SR_LINK_STATUS) != 0)    {	printf("    Link is Up\n");    }    else    {	printf("    Link is Down\n");    }    if((regval & IX_ETH_ACC_MII_SR_REMOTE_FAULT) != 0)    {	printf("    Remote fault detected\n");    }  if((regval & IX_ETH_ACC_MII_SR_TX_FULL_DPX) != 0)    {	printf("    Speed: 100Mb/s\n");	printf("    Full Duplex\n");    }    if((regval & IX_ETH_ACC_MII_SR_TX_HALF_DPX) != 0)    {	printf("    Speed: 100Mb/s\n");	printf("    Half Duplex\n");    }    if((regval & IX_ETH_ACC_MII_SR_10T_FULL_DPX) != 0)    {	printf("    Speed: 10Mb/s\n");	printf("    Full Duplex\n");    }    if((regval & IX_ETH_ACC_MII_SR_10T_HALF_DPX) != 0)    {	printf("    Speed: 10Mb/s\n");	printf("    Half Duplex\n");    }        if((regval & IX_ETH_ACC_MII_SR_AUTO_SEL)!=0)    {	printf("    Auto Negotiation Enabled\n");    }    else    {	printf("    Auto Negotiation Disabled\n");    }    if((regval & IX_ETH_ACC_MII_SR_AUTO_NEG) != 0)    {	printf("    Auto Negotiation Completed\n");    }    else    {	printf("    Auto Negotiation Not Completed\n");    }    return IX_ETH_ACC_SUCCESS;}IxEthAccStatusrealtekMiiStatsShow (UINT32 port,UINT32 phyAddr){    UINT16 regval;	    printf("Regisers on PHY at address 0x%x\n", phyAddr);    realtekMiiReadRtn(port,phyAddr, IX_ETH_ACC_MII_CTRL_REG, &regval);    realtekMiiReadRtn(port,phyAddr, IX_ETH_ACC_MII_CTRL_REG, &regval);    printf("    Control Register                  :      0x%x\n", regval);    realtekMiiReadRtn(port,phyAddr,  IX_ETH_ACC_MII_STAT_REG, &regval);    printf("    Status Register                   :      0x%x\n", regval);       realtekMiiReadRtn(port,phyAddr,  IX_ETH_ACC_MII_AN_ADS_REG, &regval);    printf("    Auto Neg ADS Register             :      0x%x\n", regval);    realtekMiiReadRtn(port,phyAddr,  IX_ETH_ACC_MII_AN_PRTN_REG, &regval);    printf("    Auto Neg Partner Ability Register :      0x%x\n", regval);    realtekMiiReadRtn(port,phyAddr,  IX_ETH_ACC_MII_AN_EXP_REG, &regval);    printf("    Auto Neg Expansion Register       :      0x%x\n", regval);    realtekMiiReadRtn(port,phyAddr,  IX_ETH_ACC_MII_STAT_REG, &regval);        printf("This local PHY's Capabilities:\n");    if((regval & IX_ETH_ACC_MII_SR_AUTO_SEL) != 0)    {	printf("    Auto Speed Select capable PHY\n");    }    else    {	printf("    Non Auto Speed Select capable PHY\n");    }    if((regval & IX_ETH_ACC_MII_SR_10T_HALF_DPX) != 0)    {	printf("    10T Half Duplex Capable PHY\n");    }    else    {	printf("    Non 10T Half Duplex Capable PHY\n");    }    if((regval & IX_ETH_ACC_MII_SR_10T_FULL_DPX) != 0)    {	printf("    10T Full Duplex Capable PHY\n");    }    else    {	printf("    Non 10T Full Duplex Capable PHY\n");    }    if((regval & IX_ETH_ACC_MII_SR_TX_HALF_DPX) != 0)    {	printf("    100Tx HD capable\n");    }    else    {	printf("    Non 100TX HD capable\n");    }    if((regval & IX_ETH_ACC_MII_SR_TX_FULL_DPX) != 0)    {	printf("    100TX FD capable\n");    }    else    {	printf("     Non 100TX FD capable\n");    }    if((regval & IX_ETH_ACC_MII_SR_T4) != 0)    {	printf("    T4 capable\n");    }    printf("PHY Status: \n");    if((regval & IX_ETH_ACC_MII_SR_LINK_STATUS) != 0)    {	printf("    Link is Up\n");    }    else    {	printf("    Link is Down\n");    }    if((regval & IX_ETH_ACC_MII_SR_REMOTE_FAULT) != 0)    {	printf("    Remote fault detected\n");    }    else    {	printf("    No Remote fault detected\n");    }    if((regval & IX_ETH_ACC_MII_SR_AUTO_NEG) != 0)    {	printf("    Auto Negotiation Completed\n");    }    else    {	printf("    Auto Negotiation Not Completed\n");    }    return IX_ETH_ACC_SUCCESS;}IxEthAccStatusrealtekMdioShow (UINT32 port){    UINT32 regval;    realtekMdioCmdRead(port,&regval);        printf("MDIO command register\n");    printf("    Go bit      : 0x%x\n", (regval & BIT(31)) >> 31);    printf("    MDIO Write  : 0x%x\n", (regval & BIT(26)) >> 26);    printf("    PHY address : 0x%x\n", (regval >> 21) & 0x1f);    printf("    Reg address : 0x%x\n", (regval >> 16) & 0x1f);	    realtekMdioStatusRead(port,&regval);    printf("MDIO status register\n");    printf("    Read OK     : 0x%x\n", (regval & BIT(31)) >> 31);    printf("    Read Data   : 0x%x\n", (regval >> 16) & 0xff);    return IX_ETH_ACC_SUCCESS;   }

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
波多野结衣一区二区三区| 日本伊人精品一区二区三区观看方式 | 欧美岛国在线观看| 蜜臀va亚洲va欧美va天堂| 日韩欧美高清一区| 国产91高潮流白浆在线麻豆| 国产清纯在线一区二区www| av中文字幕不卡| 一区二区在线免费观看| 91精品国产91久久久久久最新毛片 | 久久这里都是精品| 成人性生交大片免费看中文| 国产精品久久久久影院色老大 | 欧美最猛性xxxxx直播| 亚洲成人综合网站| 精品毛片乱码1区2区3区| 成人免费观看男女羞羞视频| 亚洲与欧洲av电影| 日韩午夜在线观看视频| 国产精品亚洲午夜一区二区三区 | 久久久99精品免费观看| 94色蜜桃网一区二区三区| 亚洲3atv精品一区二区三区| 久久久久国产一区二区三区四区 | 国产欧美精品一区二区色综合| 成人app下载| 爽爽淫人综合网网站| 久久久久国产免费免费| 欧美午夜精品电影| 国产成人一区在线| 亚洲成a人片在线不卡一二三区| 亚洲精品一区二区三区香蕉| 91在线免费播放| 蜜臀av国产精品久久久久| 国产精品女同互慰在线看| 欧美乱妇20p| 成人黄色小视频在线观看| 日本中文字幕不卡| 亚洲免费电影在线| 久久久99精品久久| 欧美一卡二卡在线观看| 色噜噜夜夜夜综合网| 国产一区在线视频| 午夜精品免费在线观看| 欧美激情综合网| 日韩精品一区二区三区四区视频| 91久久精品国产91性色tv| 国产精品一品二品| 免费不卡在线观看| 亚洲成a人v欧美综合天堂| 中文字幕亚洲一区二区va在线| 日韩欧美一级精品久久| 欧美日韩精品电影| 色综合久久久久综合| 国产大陆亚洲精品国产| 免费在线观看一区| 三级欧美在线一区| 亚洲女爱视频在线| 亚洲欧洲性图库| 国产欧美1区2区3区| 日韩一级片网站| 欧美日韩中文精品| 欧美性做爰猛烈叫床潮| 一本色道久久综合亚洲精品按摩| 岛国精品在线观看| 国产99久久久精品| 国产成人精品亚洲777人妖| 国产在线一区二区| 国产一区二区三区最好精华液| 蓝色福利精品导航| 日本免费在线视频不卡一不卡二| 亚洲韩国一区二区三区| 一区二区三区在线视频免费| 亚洲欧美激情一区二区| 亚洲免费在线看| 一区二区三区久久| 亚洲综合av网| 视频在线观看一区| 日韩影院免费视频| 免费在线观看一区| 韩国av一区二区| 国产又黄又大久久| 成人综合在线观看| 成人国产精品视频| 91啪亚洲精品| 在线看日本不卡| 欧美日产在线观看| 日韩精品一区二区三区三区免费| 精品久久久久久久人人人人传媒| 欧美成人国产一区二区| 久久久午夜精品理论片中文字幕| 久久久久久久综合| 亚洲免费观看高清完整版在线观看熊| ...av二区三区久久精品| 亚洲另类色综合网站| 亚洲午夜久久久久久久久电影院 | 麻豆精品新av中文字幕| 激情国产一区二区| 成人app网站| 欧美人动与zoxxxx乱| 欧美不卡在线视频| 日本一区免费视频| 一区二区三区精品久久久| 午夜久久电影网| 国产精品亚洲专一区二区三区| 波多野结衣91| 欧美欧美午夜aⅴ在线观看| 精品美女在线观看| 中文字幕一区二区三区av| 亚洲高清在线视频| 国产一区二区三区在线看麻豆| 91在线porny国产在线看| 欧美亚洲图片小说| ww亚洲ww在线观看国产| 亚洲三级在线免费| 麻豆freexxxx性91精品| 成人黄色免费短视频| 日韩一区二区三| 国产精品大尺度| 奇米影视一区二区三区小说| 成人精品一区二区三区四区| 91 com成人网| 中文字幕在线不卡视频| 麻豆精品久久精品色综合| 99久久免费视频.com| 欧美一级高清大全免费观看| 自拍偷拍国产亚洲| 蜜桃精品视频在线| 在线免费观看日本一区| 欧美激情一区在线观看| 视频一区国产视频| voyeur盗摄精品| 欧美精品一区二区三区视频| 亚洲一区自拍偷拍| 成人av电影在线播放| 欧美xfplay| 午夜成人免费电影| 91女人视频在线观看| 国产亚洲欧美一级| 美国十次了思思久久精品导航| 在线免费不卡电影| 综合久久给合久久狠狠狠97色| 国产麻豆成人传媒免费观看| 这里只有精品99re| 亚洲国产人成综合网站| 色综合天天综合网天天狠天天| 精品sm在线观看| 蜜臀av一区二区| 欧美高清视频www夜色资源网| 中文字幕一区在线观看| 国产成人av电影在线| 日韩亚洲电影在线| 日本成人中文字幕| 欧美日韩精品免费| 午夜免费欧美电影| 欧美日韩一区二区在线视频| 亚洲人成影院在线观看| 成人精品电影在线观看| 国产亚洲一本大道中文在线| 久久成人免费日本黄色| 日韩亚洲欧美综合| 午夜不卡av免费| 91精品国产美女浴室洗澡无遮挡| 亚洲国产精品天堂| 欧美日韩电影一区| 日韩精品一区第一页| 欧美日韩国产一二三| 午夜精品福利一区二区三区av| 欧美三区在线视频| 亚洲国产美国国产综合一区二区| 日本韩国欧美在线| 亚洲亚洲精品在线观看| 在线精品亚洲一区二区不卡| 亚洲夂夂婷婷色拍ww47 | 日韩免费观看高清完整版| 视频一区免费在线观看| 日韩欧美专区在线| 国模套图日韩精品一区二区| 久久综合给合久久狠狠狠97色69| 狠狠v欧美v日韩v亚洲ⅴ| 久久精品人人做人人爽97| 国产盗摄一区二区三区| 亚洲欧洲日产国产综合网| 色婷婷一区二区三区四区| 亚洲一区二区三区四区五区中文| 欧美男女性生活在线直播观看| 日韩av电影免费观看高清完整版| 精品成人一区二区| 91在线播放网址| 日韩精品免费专区| 2020国产精品久久精品美国| 丰满亚洲少妇av| 一二三区精品视频| 欧美成人一区二区三区片免费| 国产一区久久久| 亚洲精品免费看| 日韩视频一区二区三区在线播放| 国产精品中文字幕欧美| 自拍偷拍欧美激情| 欧美大胆一级视频|