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

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? mii.c

?? CodeWarrior IDE!COLDFIRE 5275源程序!
?? C
字號(hào):
/*
 * File:		mii.c
 * Purpose:		Media Independent Interface (MII) driver
 *
 * Notes:		
 */

#include "mii.h"
#include "src/init/m5275evb.h"

/*
 * Write a value to a PHY's MII register.
 *
 * Parameters:
 *  ch          FEC channel
 *  phy_addr    Address of the PHY.
 *  reg_addr    Address of the register in the PHY.
 *  data        Data to be written to the PHY register.
 *
 * Return Values:
 *  0 on failure
 *  1 on success.
 *
 * Please refer to your PHY manual for registers and their meanings.
 * mii_write() polls for the FEC's MII interrupt event (which should
 * be masked from the interrupt handler) and clears it. If after a
 * suitable amount of time the event isn't triggered, a value of 0
 * is returned.
 */
int
mii_write(uint8 ch, uint8 phy_addr, uint8 reg_addr, uint16 data)
{
    int timeout;
    uint32 eimr;

 //   ASSERT(ch == 0 || ch == 1);

    /*
     * Clear the MII interrupt bit
     */
    MCF_FEC_EIR(ch) = MCF_FEC_EIR_MII;

    /*
     * Write to the MII Management Frame Register to kick-off
     * the MII write
     */
    MCF_FEC_MMFR(ch) = 0
        | MCF_FEC_MMFR_ST_01
        | MCF_FEC_MMFR_OP_WRITE
        | MCF_FEC_MMFR_PA(phy_addr)
        | MCF_FEC_MMFR_RA(reg_addr)
        | MCF_FEC_MMFR_TA_10
        | MCF_FEC_MMFR_DATA(data);

    /*
     * Mask the MII interrupt
     */
    eimr = MCF_FEC_EIMR(ch);
    MCF_FEC_EIMR(ch) &= ~MCF_FEC_EIMR_MII;

    /*
     * Poll for the MII interrupt (interrupt should be masked)
     */
    for (timeout = 0; timeout < MII_TIMEOUT; timeout++)
    {
        if (MCF_FEC_EIR(ch) & MCF_FEC_EIR_MII)
            break;
    }
    if(timeout == MII_TIMEOUT)
        return 0;

    /*
     * Clear the MII interrupt bit
     */
    MCF_FEC_EIR(ch) = MCF_FEC_EIR_MII;

    /*
     * Restore the EIMR
     */
    MCF_FEC_EIMR(ch) = eimr;

    return 1;
}
/********************************************************************/
/*
 * Read a value from a PHY's MII register.
 *
 * Parameters:
 *  ch          FEC channel
 *  phy_addr    Address of the PHY.
 *  reg_addr    Address of the register in the PHY.
 *  data        Pointer to storage for the Data to be read
 *              from the PHY register (passed by reference)
 *
 * Return Values:
 *  0 on failure
 *  1 on success.
 *
 * Please refer to your PHY manual for registers and their meanings.
 * mii_read() polls for the FEC's MII interrupt event (which should
 * be masked from the interrupt handler) and clears it. If after a
 * suitable amount of time the event isn't triggered, a value of 0
 * is returned.
 */
int
mii_read(uint8 ch, uint8 phy_addr, uint8 reg_addr, uint16 *data)
{
    int timeout;

//    ASSERT(ch == 0 || ch == 1);

    /*
     * Clear the MII interrupt bit
     */
    MCF_FEC_EIR(ch) = MCF_FEC_EIR_MII;

    /*
     * Write to the MII Management Frame Register to kick-off
     * the MII read
     */
    MCF_FEC_MMFR(ch) = 0
        | MCF_FEC_MMFR_ST_01
        | MCF_FEC_MMFR_OP_READ
        | MCF_FEC_MMFR_PA(phy_addr)
        | MCF_FEC_MMFR_RA(reg_addr)
        | MCF_FEC_MMFR_TA_10;

    /*
     * Poll for the MII interrupt (interrupt should be masked)
     */
    for (timeout = 0; timeout < MII_TIMEOUT; timeout++)
    {
        if (MCF_FEC_EIR(ch) & MCF_FEC_EIR_MII)
            break;
    }

    if(timeout == MII_TIMEOUT)
        return 0;

    /*
     * Clear the MII interrupt bit
     */
    MCF_FEC_EIR(ch) = MCF_FEC_EIR_MII;

    *data = (uint16)(MCF_FEC_MMFR(ch) & 0x0000FFFF);

    return 1;
}
/********************************************************************/
/*
 * Initialize the MII interface controller
 *
 * Parameters:
 *  ch      FEC channel
 *  sys_clk System Clock Frequency (in MHz)
 */
void
mii_init(uint8 ch, uint32 sys_clk)
{
//    ASSERT(ch == 0 || ch == 1);

    /*
     * Initialize the MII clock (EMDC) frequency
     *
     * Desired MII clock is 2.5MHz
     * MII Speed Setting = System_Clock / (2.5MHz * 2)
     * (plus 1 to make sure we round up)
     */
    MCF_FEC_MSCR(ch) = MCF_FEC_MSCR_MII_SPEED((sys_clk/5)+1);
}

/********************************************************************/
/*
 * Set the duplex on the selected FEC controller
 *
 * Parameters:
 *  ch      FEC channel
 *  duplex  FEC_MII_FULL_DUPLEX or FEC_MII_HALF_DUPLEX
 */
void
fec_duplex (uint8 ch, uint8 duplex)
{
 //   ASSERT(ch == 0 || ch == 1);

    switch (duplex)
    {
        case MII_HALF_DUPLEX:
            MCF_FEC_RCR(ch) |= MCF_FEC_RCR_DRT;
            MCF_FEC_TCR(ch) &= (uint32)~MCF_FEC_TCR_FDEN;
            break;
        case MII_FULL_DUPLEX:
        default:
            MCF_FEC_RCR(ch) &= (uint32)~MCF_FEC_RCR_DRT;
            MCF_FEC_TCR(ch) |= MCF_FEC_TCR_FDEN;
            break;
    }
}

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日日噜噜夜夜狠狠视频欧美人 | 一区在线观看免费| 国产风韵犹存在线视精品| 久久综合丝袜日本网| 国产精品亚洲午夜一区二区三区 | 一区二区在线免费观看| 欧美视频精品在线观看| 丝袜美腿成人在线| 精品第一国产综合精品aⅴ| 成人理论电影网| 亚洲人成在线播放网站岛国| 欧美日韩国产一区二区三区地区| 日本欧美久久久久免费播放网| 精品毛片乱码1区2区3区| 成人午夜免费电影| 亚洲精品国久久99热| 91精品国产欧美一区二区| 国产乱子伦视频一区二区三区| 亚洲欧美一区二区三区孕妇| 欧美性受极品xxxx喷水| 日韩av一区二区在线影视| 日本一区二区三区四区在线视频 | 免费一区二区视频| 国产精品美女一区二区三区| 欧美午夜精品一区二区三区| 精品一区二区在线视频| 亚洲丝袜美腿综合| 26uuu亚洲| 欧美综合在线视频| 国产综合色精品一区二区三区| 亚洲图片你懂的| 日韩欧美在线影院| 色综合久久六月婷婷中文字幕| 日韩av中文在线观看| 亚洲欧洲成人精品av97| 日韩免费看网站| 欧美在线视频你懂得| 国产伦精品一区二区三区在线观看| 一区二区欧美精品| 中文字幕高清不卡| 日韩色在线观看| 在线亚洲人成电影网站色www| 国产一区二区三区av电影| 亚洲成人黄色小说| 亚洲欧美一区二区三区久本道91| 久久色中文字幕| 欧美一区二区三区在线看| 在线观看免费亚洲| 99久久精品国产一区| 久草精品在线观看| 日韩精品视频网| 亚洲精品视频自拍| 亚洲欧洲日韩女同| 国产欧美一区二区三区沐欲 | 91国模大尺度私拍在线视频| 国产乱码精品1区2区3区| 日本午夜一区二区| 午夜影院在线观看欧美| 亚洲免费观看高清完整版在线观看熊 | 国产成人免费视频网站高清观看视频 | 成人精品在线视频观看| 韩国成人在线视频| 蜜桃在线一区二区三区| 午夜精品久久久久久久久久久| 亚洲欧美韩国综合色| 中文字幕在线一区免费| 欧美激情综合在线| 国产欧美综合色| 欧美极品美女视频| 国产精品视频一二| 国产精品不卡一区| 亚洲男人的天堂av| 亚洲一区中文日韩| 午夜视黄欧洲亚洲| 视频一区二区三区中文字幕| 午夜日韩在线电影| 日韩精品乱码免费| 麻豆国产欧美一区二区三区| 麻豆91精品视频| 国产精品综合二区| 福利一区二区在线| 成人精品免费视频| 91在线观看下载| 色妹子一区二区| 欧美日韩成人综合| 欧美mv日韩mv国产网站| 久久精品视频在线看| 国产午夜精品在线观看| 国产精品久久三区| 亚洲已满18点击进入久久| 首页国产欧美日韩丝袜| 国产一区欧美二区| 99久久综合狠狠综合久久| 91在线视频网址| 制服丝袜中文字幕亚洲| 久久综合色之久久综合| 亚洲欧洲成人av每日更新| 亚洲一级二级三级| 久久国产欧美日韩精品| 丁香婷婷综合激情五月色| 91猫先生在线| 日韩一区二区三区av| 日本一区二区免费在线观看视频| 亚洲视频在线观看三级| 五月激情综合网| 国产麻豆精品在线| 欧美在线你懂得| 精品久久久久久久一区二区蜜臀| 国产精品三级电影| 午夜一区二区三区在线观看| 国产精品一区二区免费不卡 | 久久精品亚洲麻豆av一区二区| 日韩理论在线观看| 欧美aa在线视频| av中文字幕一区| 日韩欧美亚洲一区二区| 亚洲欧美影音先锋| 老司机一区二区| 日本久久电影网| 久久久久久黄色| 亚洲午夜电影在线| 成人久久18免费网站麻豆| 欧美一区二区成人| 亚洲欧美经典视频| 国产成人在线视频网站| 欧美日韩成人在线一区| 国产精品久久久久久久久免费樱桃| 日韩二区三区在线观看| 99久久精品国产一区二区三区| 日韩精品一区国产麻豆| 亚洲国产综合在线| 91网站在线观看视频| 欧美电影免费观看高清完整版在线观看| 亚洲手机成人高清视频| 国产精品一品二品| 欧美va亚洲va国产综合| 亚洲第一成人在线| 在线亚洲精品福利网址导航| 欧美激情综合在线| 国产精一区二区三区| 日韩免费观看2025年上映的电影 | 精品一区二区三区香蕉蜜桃| 欧美午夜理伦三级在线观看| 国产精品午夜在线观看| 国产精品99久久久久久久女警 | 91免费小视频| 国产亚洲欧洲一区高清在线观看| 五月天一区二区| 欧美日韩一区二区三区四区 | 91影院在线观看| 国产亚洲成av人在线观看导航| 久草中文综合在线| 日韩精品一区二区三区在线| 香蕉久久一区二区不卡无毒影院| 欧美自拍偷拍午夜视频| 亚洲裸体xxx| 一本久道久久综合中文字幕| 国产精品久久免费看| 波波电影院一区二区三区| 欧美极品美女视频| 成人丝袜高跟foot| 中文字幕第一区第二区| 丰满放荡岳乱妇91ww| 国产精品美女久久久久久久网站| 成人午夜精品在线| 国产精品久久久久桃色tv| av高清不卡在线| 亚洲欧美色综合| 精品视频全国免费看| 午夜精品久久久久久| 日韩欧美一级二级三级久久久| 美国精品在线观看| 久久这里只有精品首页| 国产精品乡下勾搭老头1| 国产精品第13页| 欧美性猛交xxxx黑人交| 午夜欧美大尺度福利影院在线看| 欧美久久久久久久久久| 日本sm残虐另类| 久久久久久久久久久久电影| 国产成人免费视| 亚洲精品成人天堂一二三| 欧美日韩国产首页| 美女精品自拍一二三四| 久久精品视频在线免费观看| 91免费国产在线| 日韩电影免费在线观看网站| 26uuu亚洲综合色欧美| gogo大胆日本视频一区| 五月天婷婷综合| 久久无码av三级| 色婷婷国产精品综合在线观看| 香蕉成人伊视频在线观看| 欧美mv日韩mv国产网站| 99国产一区二区三精品乱码| 亚洲 欧美综合在线网络| 精品久久免费看| 在线观看视频91| 国产一本一道久久香蕉| 一区二区三区欧美|