日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

U-boot phy驱动开发总结

發(fā)布時(shí)間:2023/12/20 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 U-boot phy驱动开发总结 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

文章目錄

    • 基礎(chǔ)
      • 須知
      • 數(shù)據(jù)結(jié)構(gòu)
      • 數(shù)據(jù)結(jié)構(gòu)UML類圖
    • PHY核心 API
    • 初始化
      • 支持uclass
      • 支持legacy
    • 總結(jié)

基礎(chǔ)

須知

  • CONFIG_DM_ETH is not set
  • NT使用 MAC(eqos) + Generic PHY,的組合方式,所以phy_register(&genphy_driver)
  • MAC的start中會(huì)調(diào)用phy_connect,嘗試probe總線MDIO上的mask內(nèi)所有PHY
  • 總體流程:phy_connect => phy_config => phy_startup
  • MAC 與MDIO是一個(gè)整體,所以MDIO的讀寫在MAC驅(qū)動(dòng)中實(shí)現(xiàn);
  • 一個(gè)MAC可以匹配多個(gè)PHY,使用phy_connect指定name綁定;
  • PHY設(shè)備與驅(qū)動(dòng)匹配還是使用phy_id & phy_id_mask方式匹配;
  • MAC遍歷PHY時(shí)使用PHY驅(qū)動(dòng)的probe實(shí)現(xiàn),最終會(huì)調(diào)用phy_device_create,創(chuàng)建phy_device實(shí)例;
  • MAC綁定一個(gè)MII設(shè)備,PHY也會(huì)綁定一個(gè)MII設(shè)備, 最終實(shí)現(xiàn)MAC綁定PHY;
  • Port19需要配置為CPU口;
  • IP18xx驅(qū)動(dòng)需要封裝了mdio總線,當(dāng)設(shè)備smi_adr==自身addr,發(fā)給switch直接傳遞,非發(fā)給switch進(jìn)行封裝;
  • phy_connect申請(qǐng)phy對(duì)象,具體驅(qū)動(dòng)將其實(shí)例化;
  • 數(shù)據(jù)結(jié)構(gòu)

    • MAC設(shè)備,struct eth_device *dev;
    #define ETH_NAME_LEN 20struct eth_device {char name[ETH_NAME_LEN]; // 網(wǎng)卡名int state; // 網(wǎng)卡當(dāng)前狀態(tài)int (*init)(struct eth_device *, bd_t *); // 初始化int (*send)(struct eth_device *, void *packet, int length); // 收發(fā)int (*recv)(struct eth_device *);int (*write_hwaddr)(struct eth_device *); // MAC 修改struct eth_device *next; // 網(wǎng)卡設(shè)備間使用鏈表管理void *priv; // 私有數(shù)據(jù),一般用于關(guān)聯(lián)eth網(wǎng)卡實(shí)例的私有實(shí)例數(shù)據(jù);。。。 };
    • MDIO總線,struct mii_dev *bus;
    struct mii_dev {char name[MDIO_NAME_LEN]; // mdio總線名 int (*read)(struct mii_dev *bus, int addr, int devad, int reg); // 讀寫int (*write)(struct mii_dev *bus, int addr, int devad, int reg, u16 val);struct phy_device *phymap[PHY_MAX_ADDR]; // 總線下已記錄的phy設(shè)備,以地址為索引void *priv; // 私有數(shù)據(jù),一般用于關(guān)聯(lián)網(wǎng)卡私有數(shù)據(jù)。。。 };
    • PHY設(shè)備,struct phy_device *dev;
    struct phy_device {struct mii_dev *bus; // 當(dāng)前phy連接到的總線struct phy_driver *drv; // phy驅(qū)動(dòng)void *priv; // 私有數(shù)據(jù),一般用于關(guān)聯(lián)phy實(shí)例的私有數(shù)據(jù);struct eth_device *dev; // 當(dāng)前phy連接到的eth網(wǎng)卡int speed; // phy 數(shù)據(jù)總線的速率(MII工作模式)int duplex; // phy 數(shù)據(jù)總線的模式(MII工作模式)int link; // phy 連接狀態(tài)int autoneg; // phy是否支持自動(dòng)協(xié)商,對(duì)于switch可以強(qiáng)制不協(xié)商、速率和模式固定;int addr; // phy地址u32 phy_id; // 實(shí)際id,一般使用get_phy_id獲取。。。 };
    • phy驅(qū)動(dòng)
    struct phy_driver {char *name;unsigned int uid; // uid 在phy_connect過程中與mask配合使用匹配設(shè)備unsigned int mask;u32 features; // 特性,如告知非通用PHY/* Called to do any driver startup necessities *//* Will be called during phy_connect */int (*probe)(struct phy_device *phydev); // probe 探測(cè)/* Called to configure the PHY, and modify the controller* based on the results. Should be called after phy_connect */int (*config)(struct phy_device *phydev); // probe通過后,PHY配置/* Called when starting up the controller */int (*startup)(struct phy_device *phydev); // 。。。 };
    • MAC實(shí)例私有數(shù)據(jù),struct eqos_priv
    struct eqos_priv {struct eth_device *dev; // ETH網(wǎng)絡(luò)設(shè)備驅(qū)動(dòng)struct mii_dev *mii; // MDIO總線驅(qū)動(dòng)struct phy_device *phy; // PHY設(shè)備驅(qū)動(dòng)u32 phyaddr; // 目標(biāo)連接phy的地址 ... };
    • PHY實(shí)例私有數(shù)據(jù),struct ip18xx_phy_priv
    struct ip18xx_phy_priv {int id;int smi_addr; // address where switch is detected.struct mii_dev *mdio_bus; // original mdio_bus which MAC own. };

    數(shù)據(jù)結(jié)構(gòu)UML類圖

    PHY核心 API

    core: phy.c u-boot\drivers\net\phy\phy.c

  • 匹配bus下的地址為addr的PHY設(shè)備所需驅(qū)動(dòng)并返回實(shí)例,所以不需要手動(dòng)生成PHY設(shè)備的數(shù)據(jù)對(duì)象。
  • struct phy_device *phy_connect(struct mii_dev *bus, int addr, struct eth_device *dev, phy_interface_t interface)

  • PHY配置,最終調(diào)用到相應(yīng)phy驅(qū)動(dòng)的實(shí)現(xiàn)
  • int phy_config(struct phy_device *phydev)

  • PHY啟動(dòng),最終調(diào)用到相應(yīng)PHY驅(qū)動(dòng)的實(shí)現(xiàn)
  • int phy_startup(struct phy_device *phydev)

  • PHY關(guān)閉,最終調(diào)用到相應(yīng)PHY驅(qū)動(dòng)的實(shí)現(xiàn)
  • int phy_shutdown(struct phy_device *phydev)

    初始化

    支持uclass

    總線:
    1、程序段:.u_boot_list_2_driver_2_eth_eqos中先定義結(jié)構(gòu)體:struct driver u_boot_list_2_driver_2_eth_eqos

    U_BOOT_DRIVER(eth_eqos) = {.name = "eth_eqos",.id = UCLASS_ETH,.of_match = eqos_ids,.probe = eqos_probe, // #1 驅(qū)動(dòng)probe.remove = eqos_remove,.ops = &eqos_ops, // ops操作集.priv_auto_alloc_size = sizeof(struct eqos_priv), // #2 申請(qǐng)私有內(nèi)存.platdata_auto_alloc_size = sizeof(struct eth_pdata), };static const struct eth_ops eqos_ops = {.start = eqos_start, // 啟動(dòng).stop = eqos_stop,.send = eqos_send, // 收發(fā), send、recv.recv = eqos_recv,.free_pkt = eqos_free_pkt,.write_hwaddr = eqos_write_hwaddr, // MAC地址寫入 };#1 在device_probe會(huì)被檢查,進(jìn)而調(diào)用eqos_probe,探測(cè)驅(qū)動(dòng) #2 在device_probe會(huì)被檢查,進(jìn)而使用alloc_priv,申請(qǐng)大小為sizeof(struct eqos_priv);通用MAC驅(qū)動(dòng),走U_BOOT_DRIVER X:\source_code\Nt9852x\workspace_sourceInsight\u-boot\drivers\net\dwc_eth_qos.cstatic int eqos_probe(struct udevice *dev)struct eqos_priv *eqos = dev_get_priv(dev);eqos->mii = mdio_alloc(); // MDIO總線申請(qǐng),單純申請(qǐng)內(nèi)存eqos->mii->read = eqos_mdio_read; // MDIO總線初始化,涉及:read、wrrte、name、priveqos->mii->write = eqos_mdio_write;eqos->mii->priv = eqos;strcpy(eqos->mii->name, dev->name); mdio_register(eqos->mii); // MDIO總線注冊(cè),使用名字檢查該總線是否為全局鏈表mii_devs中唯一

    支持legacy

    非通用驅(qū)動(dòng),走uboot初始化流程 X:\source_code\Nt9852x\workspace_sourceInsight\u-boot\drivers\net\eth_na51055.cinit_sequence_r // u-boot\common\board_r.cinitr_neteth_initialize();if (board_eth_init != __def_eth_init) {board_eth_init(gd->bd)c // #1 弱符號(hào),板級(jí)實(shí)現(xiàn),所以在 board\novatek\nvt-na51055\na51055evb.cna51055_eth_initialize(bis); // u-boot\board\novatek\nvt-na51055\na51055evb.cstruct eth_device *dev;eth_parse_phy_intf(); // DTS中 MII 數(shù)據(jù)總線分析(接口類型與時(shí)鐘)dev = malloc(sizeof *dev);sprintf(dev->name, "eth_na51055"); // 網(wǎng)卡設(shè)備,初始化,dev->init = eqos_start; // #2 初始化實(shí)現(xiàn) eth_register(dev); // 網(wǎng)卡設(shè)備添加到鏈表,eth_devices->nexteqos = malloc(sizeof *eqos); // 直接申請(qǐng)eqos私有數(shù)據(jù)需要的內(nèi)存;dev->priv = eqos; // #4 網(wǎng)卡驅(qū)動(dòng)私有數(shù)據(jù)關(guān)聯(lián)eqoseqos->dev = dev;eqos_probe_resources_core(dev);eqos_probe_hwinit();eqos->mii = mdio_alloc(); // #3 eqos關(guān)聯(lián)miieqos->mii->read = eqos_mdio_read;eqos->mii->write = eqos_mdio_write;eqos->mii->priv = eqos; // #5 mdio總線關(guān)聯(lián)私有數(shù)據(jù)eqosstrcpy(eqos->mii->name, dev->name);mdio_register(eqos->mii); // memcpy(dev->enetaddr, default_mac_addr, 6); // MAC地址設(shè)置 for (i = 0; i < 32; i++) { // *1 探測(cè)物理MDIO總線上的PHY設(shè)備,第一個(gè)被探測(cè)到的設(shè)備被視為目標(biāo)連接設(shè)備phyval = eqos_mdio_read(eqos->mii, i, 0, MII_BMSR);if (phyval != 0x0000 && phyval != 0xffff) {phyaddr = i; eqos->phyaddr = phyaddr; // *2 記錄phyaddr,在init階段視為連接的目標(biāo)*1*2 : NT的邏輯,phyaddr靠前的PHY優(yōu)先被視為目標(biāo)連接的phy,在dev->init = eqos_start階段就以此為目標(biāo)連接的PHY#4 :網(wǎng)卡驅(qū)動(dòng)eth_device私有數(shù)據(jù)關(guān)聯(lián)eqos #5 : mdio總線關(guān)聯(lián)私有數(shù)據(jù)eqosstatic int eqos_start(struct udevice *dev)struct eqos_priv *eqos = dev_get_priv(dev);eqos->phy = phy_connect(eqos->mii, eqos->phyaddr, eth_dev, 0); // #12 連接PHY,根據(jù)phyaddr,先確認(rèn)是否已實(shí)例,如果沒有則創(chuàng)建。關(guān)聯(lián)phystruct phy_device *phydev = NULL;uint mask = (addr > 0) ? (1 << addr) : 0xffffffff; // #2 如果沒有指定phyaddr,遍歷32個(gè)phyphydev = phy_find_by_mask(bus, mask, interface); // 以mask查找物理mdio總線上匹配的phy設(shè)備并實(shí)例化get_phy_device_by_mask(bus, phy_mask, interface);phydev = search_for_existing_phy(bus, phy_mask, interface); // 查找bus->phymap[addr]中已經(jīng)記錄的phy設(shè)備,如果在在直接返回;if (phydev) return phydev;phydev = create_phy_by_mask(bus, phy_mask, i ? i : MDIO_DEVAD_NONE, interface);u32 phy_id = 0xffffffff;while (phy_mask) { // #3 從高地址到低地址,探測(cè)phy_mask下所有phy,第一個(gè)被探測(cè)到的設(shè)備被視為目標(biāo)連接設(shè)備int addr = ffs(phy_mask) - 1; int r = get_phy_id(bus, addr, devad, &phy_id); // *6 弱符號(hào), 讀取通用PHY的ID寄存器:MII_PHYSID1(0x02)、MII_PHYSID2(0x03)if (r == 0 && (phy_id & 0x1fffffff) != 0x1fffffff) {return phy_device_create(bus, addr, phy_id, is_c45, interface);dev = malloc(sizeof(*dev));dev->phy_id = phy_id;。。。 // dev->... 其他參數(shù)初始化dev->drv = get_phy_driver(dev, interface);list_for_each(entry, &phy_drivers) {drv = list_entry(entry, struct phy_driver, list);if ((drv->uid & drv->mask) == (phy_id & drv->mask)) // #1 匹配規(guī)則:驅(qū)動(dòng)與實(shí)際的uid & mask相匹配return drv;return generic_for_interface(interface); // #2 如果沒有匹配的PHY驅(qū)動(dòng)則使用genphy_driver,即通用PHY驅(qū)動(dòng)phy_probe(dev); // *1 probe匹配,此處沒有返回值檢查,如果probe失敗,仍會(huì)繼續(xù)if (phydev->drv->probe)err = phydev->drv->probe(phydev); // #3 如果驅(qū)動(dòng)有自己的probe實(shí)現(xiàn),則調(diào)用 phy_mask &= ~(1 << addr);phy_connect_dev(phydev, dev);phy_reset(phydev); // #4 使用通用PHY 控制寄存器軟件復(fù)位,對(duì)于switch需要額外復(fù)位時(shí)間if (phydev->flags & PHY_FLAG_BROKEN_RESET) return 0;#ifdef CONFIG_PHY_RESET_DELAYudelay(CONFIG_PHY_RESET_DELAY); /* Intel LXT971A needs this */phydev->dev = dev; // #11 將eth與phydev關(guān)聯(lián)return phydev;ret = phy_config(eqos->phy);board_phy_config(phydev); // #5 弱符號(hào),PHY相關(guān)配置,所以IP18xx中需要實(shí)現(xiàn)configif (phydev->drv->config)return phydev->drv->config(phydev); // #7, 驅(qū)動(dòng)自實(shí)現(xiàn)ret = phy_startup(eqos->phy);if (phydev->drv->startup)return phydev->drv->startup(phydev); // #8, 驅(qū)動(dòng)自實(shí)現(xiàn)ret = eqos_adjust_link(dev);if (eqos->phy->duplex)ret = eqos_set_full_duplex(dev); // #9, RGMII全雙工switch (eqos->phy->speed) {case SPEED_1000: // #10, 千兆PHY,RGMII配置en_calibration = true;ret = eqos_set_gmii_speed(dev);case 。。。 // 其他速率配置。。。#56 :弱符號(hào),盡量不要實(shí)現(xiàn),否則對(duì)其他PHY驅(qū)動(dòng)匹配干擾 static struct phy_driver ip18xx_driver = {.name = "IP18xx",.uid = 0x00,.mask = 0xffffffff,.features = PHY_GBIT_FEATURES,.probe = ip18xx_probe,.config = ip18xx_phy_config,.startup = ip18xx_phy_startup, };#1 :驅(qū)動(dòng)與實(shí)際的uid & mask相匹配 #910 :RGMII總線相關(guān)配置,注意不要與電口上的速率等配置信息混淆*1 :目前發(fā)現(xiàn)的uboot下phy.c 核心的問題:probe失敗不終止初始化流程 *6 :get_phy_id,弱符號(hào),讀取通用PHY的ID寄存器:MII_PHYSID1(0x02)、MII_PHYSID2(0x03),問題:不合理重實(shí)現(xiàn)后,會(huì)對(duì)內(nèi)置PHY、其他switch造成干擾#2 :Nt邏輯,指定目標(biāo)phy設(shè)備的addr去連接phy。如果沒有指定phyaddr,從高地址探測(cè)32個(gè)phyaddr,連接每第一個(gè)探測(cè)到的PHY并匹配驅(qū)動(dòng)。 #3 : 與na51055_eth_initialize中探測(cè)phy的方式相向而行,目標(biāo)只有一個(gè),兩者最終都指向phyaddr; #4 :復(fù)位PHY,對(duì)于switch可以設(shè)置phydev->flags & PHY_FLAG_BROKEN_RESET,表示不支持軟件復(fù)位#11 : phy設(shè)備phydev關(guān)聯(lián)eth_device設(shè)備dev #12 :私有數(shù)據(jù)eqos關(guān)聯(lián)phydev

    總結(jié)

  • 初始化數(shù)組中初始化網(wǎng)絡(luò)(initr_net)會(huì)最終調(diào)用到對(duì)弱符號(hào)(board_eth_init)的在板型為nvt-na51055下的實(shí)現(xiàn),即na51055_eth_initialize;
  • na51055_eth_initialize是MAC的初始化,過程中也注冊(cè)了mdio總線。過程中將物理總線上第一個(gè)探測(cè)到phy的地址保存并視為目標(biāo)連接phy地址;至此,MAC + MDIO初始化完成;
  • 正式init階段(tftp、ping等命令調(diào)用eth_init()),進(jìn)行MAC連接目標(biāo)PHY的流程。
  • 調(diào)用phy_connect接口來連接目標(biāo)phy,使用驅(qū)動(dòng)與實(shí)際的uid & mask相匹配,uid為調(diào)用get_phy_id從PHY寄存器實(shí)際讀取的值;
  • 連接目標(biāo)phy成功后,會(huì)必要軟件復(fù)位phy,所以對(duì)于非通用phy的switch而言這個(gè)過程必定會(huì)失敗,可設(shè)置跳過;
  • 再經(jīng)過config、startup(驅(qū)動(dòng)自實(shí)現(xiàn))后,phy(switch)的配置基本完成,進(jìn)入最終的eqos_adjust_link,調(diào)整RGMII相關(guān)配置;
  • eqos_adjust_link可以根據(jù)PHY的實(shí)際情況調(diào)整;
  • 對(duì)于switch而言,外接多種PHY(百兆、千兆),所以希望RGMII總線工作在最佳模式,所以固件為:千兆、全雙工、連接狀態(tài);
  • 總結(jié)

    以上是生活随笔為你收集整理的U-boot phy驱动开发总结的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

    欧美一区二区三区在线 | 亚洲最大激情中文字幕 | 国产精品美女免费视频 | 国产日本三级 | 国产亚洲精品久久久久秋 | 欧美成人黄色 | 91视频91蝌蚪| 久久一区二区三区国产精品 | 国内精品久久久久久中文字幕 | 国产精品久久久久久一区二区三区 | 亚洲v欧美v国产v在线观看 | 国产精品中文字幕在线 | 国产精品久久久av久久久 | 91精品国自产拍天天拍 | 欧美日韩18 | 国产h片在线观看 | 久草热视频 | 不卡精品视频 | 欧美激情精品久久久久久免费印度 | 国产精品热 | 伊人日日干 | 日韩美精品视频 | 人人澡超碰碰97碰碰碰软件 | 久久久久久久久久久久久久免费看 | 日韩高清一区在线 | a黄色一级片 | 亚洲精品av中文字幕在线在线 | 国内久久看 | 久久久精品高清 | 久久国产精品久久w女人spa | 国产精品99久久久久的智能播放 | 99精品视频一区 | 久久久精品一区二区三区 | 久久av高清 | 最近中文字幕在线 | av成人免费网站 | 成人h视频在线 | 国产精品久久99精品毛片三a | 中文字幕永久在线 | av综合av| 青青草国产成人99久久 | www.国产毛片 | 永久免费毛片在线观看 | 成人久久精品视频 | 色婷婷久久久 | 麻豆视频免费在线 | 夜夜操夜夜干 | 久久亚洲免费视频 | av一级二级 | 亚洲精品资源在线观看 | 一区精品在线 | 视频在线在亚洲 | 国产免费中文字幕 | 丁香激情综合国产 | 成人精品999| 色婷婷www | 国产免费一区二区三区最新 | 91视频成人免费 | 美女网站视频久久 | 亚洲精品午夜久久久 | 国产视频一二区 | 日韩成人在线一区二区 | 五月亚洲 | 国产91精品看黄网站在线观看动漫 | 国产日产精品久久久久快鸭 | 人人干在线 | 911免费视频 | 玖玖爱在线观看 | 国产一区二区免费看 | 欧美精彩视频在线观看 | 欧美性生交大片免网 | 国产亚洲aⅴaaaaaa毛片 | 亚洲 成人 欧美 | 丁香久久激情 | 久久久久久蜜桃一区二区 | 999成人| 免费看黄在线观看 | 狠狠狠色丁香综合久久天下网 | 99国产视频| 夜夜爱av| 久久综合欧美精品亚洲一区 | 欧美成人影音 | 欧美俄罗斯性视频 | 免费日韩av片 | 91精品国产综合久久福利不卡 | 国产一区免费看 | 一区精品久久 | 国产精品午夜av | 欧美了一区在线观看 | 中文字幕一区2区3区 | 久久精品视频免费 | 亚洲国产午夜精品 | av在线中文| 亚洲精品乱码久久久久久 | 国产高清日韩欧美 | 日韩久久精品一区二区 | 婷婷五综合 | 国产品久精国精产拍 | 超碰大片| 国产涩图 | 福利久久 | 亚洲电影影音先锋 | 岛国av在线不卡 | 丁香婷婷久久久综合精品国产 | 久久狠狠一本精品综合网 | av在线免费网 | 天天干天天天 | 综合久久一本 | 中文字幕资源网 国产 | 日韩高清三区 | 欧美性春潮 | 亚洲精品白浆高清久久久久久 | 人成在线免费视频 | 奇米影视777四色米奇影院 | 亚洲成人黄色在线观看 | 日韩免费在线看 | 手机在线看永久av片免费 | 久久久综合香蕉尹人综合网 | 久久这里只有精品久久 | 91黄色影视 | 丁香花中文在线免费观看 | 久久久久久久久久网 | 国产麻豆果冻传媒在线观看 | 91中文字幕永久在线 | 激情五月网站 | 九九热av| 国产美女在线观看 | 九色琪琪久久综合网天天 | 国产精品嫩草影院123 | 99视频在线免费看 | 久久精品久久久久电影 | 2022中文字幕在线观看 | 天天色天天综合 | 午夜免费在线观看 | 五月婷婷电影网 | 免费亚洲精品 | 欧洲性视频 | www.色就是色 | 久久草网站 | 国产伦理一区 | 免费观看成人 | 中文字幕一区二区三区乱码不卡 | 国产区高清在线 | 国产一级免费在线 | 久久精品国产一区二区三区 | 欧美三级在线播放 | 最近中文字幕免费视频 | 天天躁天天躁天天躁婷 | 成人9ⅰ免费影视网站 | 日本久久片 | 91网在线看| 日韩欧美综合在线视频 | 激情亚洲综合在线 | 国产午夜一区二区 | 午夜影院在线观看18 | 欧美成人基地 | 久久久香蕉视频 | 免费99精品国产自在在线 | 亚洲精品欧美成人 | 在线天堂亚洲 | 日韩理论在线观看 | 国内少妇自拍视频一区 | 亚洲一级电影 | 久操视频在线免费看 | 国产资源精品在线观看 | 高潮久久久久久久久 | 欧美精品一区在线发布 | 亚洲电影免费 | 国产在线精品区 | 91精品啪在线观看国产 | 中文字幕在线中文 | 91毛片在线观看 | av一区在线 | 天天插天天干天天操 | 欧美午夜精品久久久久久浪潮 | 天天天天爱天天躁 | 免费在线激情视频 | 中文字幕在线播放av | 99在线观看视频 | 亚洲精品色婷婷 | www久久| 午夜色性片 | 精品国自产在线观看 | 欧洲亚洲国产视频 | 蜜臀av免费一区二区三区 | 韩国精品视频在线观看 | 久热只有精品 | 99热这里有 | 日韩电影中文字幕在线 | 9999精品| 国产精品久久99综合免费观看尤物 | 精品免费 | 亚洲一级片在线看 | 天天爱天天色 | 国产精品午夜久久 | 精品视频9999| 亚洲不卡123 | 日本在线免费看 | 91av色 | 色香天天 | 久久狠狠一本精品综合网 | 99精品视频一区 | 一区二区精品视频 | 在线观看视频一区二区三区 | 久久艹国产视频 | 日韩激情av在线 | 久久综合国产伦精品免费 | 天天天天天天干 | 国产视频一区二区在线 | 又粗又长又大又爽又黄少妇毛片 | 国产国产人免费人成免费视频 | 99久久毛片 | 午夜视频不卡 | 9999精品| 99热最新地址 | 国产在线观看你懂得 | 国产亚洲在线 | 久久久999精品视频 国产美女免费观看 | 国产精品99爱 | 狠狠干美女 | 国产精品视频在线观看 | 成人影视免费看 | 黄色a一级片 | 久久久久伊人 | 婷婷免费视频 | 九九热久久免费视频 | 伊人天堂网 | 国产成人综合在线观看 | 久久午夜鲁丝片 | 久久免费精品国产 | 青草视频在线看 | 久久天天躁夜夜躁狠狠躁2022 | 久久国产a | 啪啪动态视频 | 久久国产精品久久精品国产演员表 | 国产精品麻豆91 | 在线成人性视频 | 天天综合五月天 | 超碰在线中文字幕 | 国产小视频免费观看 | 在线观看中文字幕一区 | 午夜少妇 | 天天操天天操天天操天天操 | 久久久久99精品成人片三人毛片 | 在线观看免费黄视频 | 久草免费在线 | 91视频免费看 | 欧美精品一区二区免费 | 亚洲综合欧美日韩狠狠色 | 天天插狠狠插 | 成人网在线免费视频 | 婷婷伊人五月天 | 欧美精品一区二区在线观看 | 91pony九色丨交换 | 亚洲美女精品视频 | 久久久久久久影视 | 国产91免费在线观看 | 午夜国产成人 | 毛片网站在线 | 99精品成人 | 婷婷激情站 | 伊人久久国产精品 | 超碰在线最新网址 | 日韩精品不卡 | 免费视频 你懂的 | 91精品视频一区 | 日韩精品不卡在线观看 | 操操日日 | 国产精品毛片一区 | 国产成人在线观看 | 探花视频网站 | 国产日韩欧美在线一区 | 久久久.com| 成人免费视频网站 | 在线电影 一区 | 欧美日韩亚洲在线观看 | 国产黄色精品网站 | 激情综合网婷婷 | 一区二区三区免费在线播放 | 久9在线| 91av在线免费看 | 亚洲一二区视频 | 久久午夜网 | 免费观看日韩av | 在线看片日韩 | 人人射人人射 | 国产99精品 | 国内一区二区视频 | 欧美日韩在线精品一区二区 | 中日韩欧美精彩视频 | 日韩欧美69 | 最新av免费在线观看 | 玖玖色在线观看 | 最近中文字幕完整高清 | 92av视频 | 91精品视屏 | 日韩一区二区三区高清在线观看 | 国产一级高清视频 | 91视频88av | 亚洲视频 在线观看 | 四虎国产免费 | 日韩欧美精品在线观看 | 欧美日韩不卡在线观看 | av福利在线播放 | 91丨精品丨蝌蚪丨白丝jk | 毛片二区| 亚洲九九 | 亚洲黄色成人网 | 亚州日韩中文字幕 | 久热爱| 91精品国产99久久久久久红楼 | 欧美天堂视频在线 | 免费在线观看av网址 | 免费看片亚洲 | 午夜精品久久久久久久99婷婷 | 黄免费在线观看 | 欧美在线资源 | 中文字幕乱码电影 | 97国产精品一区二区 | 欧美亚洲精品在线观看 | 九九九九热精品免费视频点播观看 | 国产成人精品一区二区三区在线 | 久久久国产一区二区 | 美女免费视频一区二区 | 中文字幕精品在线 | 国产精品久久久久久久久久免费 | 久 久久影院 | 中文字幕在线免费观看 | 91久久偷偷做嫩草影院 | 色无五月 | 色婷婷88av视频一二三区 | 亚洲理论片在线观看 | 亚洲1区 在线 | 国产日韩欧美综合在线 | 久久久精品影视 | 免费视频a| 九九国产精品视频 | 996久久国产精品线观看 | 色综合天天天天做夜夜夜夜做 | 中文字幕在线影院 | 成人国产精品 | 高潮久久久 | 国产偷国产偷亚洲清高 | 午夜的福利 | 成人黄大片视频在线观看 | 人人插超碰 | 一区二区三区国产欧美 | 狠狠躁18三区二区一区ai明星 | 在线免费视频你懂的 | 国产精品麻豆果冻传媒在线播放 | 国产一区免费视频 | 最近久乱中文字幕 | 天天天色| 天海冀一区二区三区 | 精品中文字幕在线 | 国产亚洲精品久久久久久无几年桃 | 天天五月天色 | 女人18精品一区二区三区 | 免费看三片 | 欧美日韩性生活 | 五月天婷婷在线观看视频 | 操操操日日日干干干 | 天天干天天干天天色 | 99r在线观看| 国产精品剧情在线亚洲 | 免费看的黄网站软件 | 国产黄色片一级 | 狠狠成人 | 欧美污污视频 | 一区三区在线欧 | 国产青草视频在线观看 | 国产成人福利 | 天天爽夜夜爽人人爽一区二区 | 天天想夜夜操 | 91精品国产99久久久久久久 | 97在线观看视频国产 | 婷婷五月在线视频 | 国产午夜免费视频 | 欧美精品久久久久久久亚洲调教 | 黄色电影在线免费观看 | 在线观看视频国产一区 | 国产粉嫩在线观看 | 一级成人在线 | 91欧美视频网站 | 天天干中文字幕 | 亚洲高清视频一区二区三区 | 日本在线h | 日韩久久视频 | www.69xx | 亚洲精品视频国产 | 国产成人精品国内自产拍免费看 | 五月婷婷综合激情网 | 四虎影视成人永久免费观看亚洲欧美 | 国产精品毛片一区视频播不卡 | 免费成人看片 | 狠狠狠色丁香综合久久天下网 | 中文字幕免费在线 | 丁香婷婷深情五月亚洲 | 涩涩色亚洲一区 | 色综合色综合久久综合频道88 | 欧美视频日韩 | 国产字幕在线播放 | 狠狠综合网 | 综合色中色 | 天天干天天怕 | 国内免费的中文字幕 | 女人18毛片a级毛片一区二区 | 成人免费91| 久久伊人色综合 | 97超碰人人看| 久久精品第一页 | 日韩av五月天 | 日韩欧美精品在线 | 丁香视频全集免费观看 | 99国内精品 | 精品免费一区二区三区 | 91视频麻豆视频 | aaaaaa毛片 | 日本三级大片 | 日韩精品久久久 | www在线观看视频 | 日韩理论电影在线观看 | 一级免费黄色 | 久久久在线 | 成人在线小视频 | 国产精品久久久久久一区二区 | 欧美成人免费在线 | 久久看片 | 在线视频观看91 | 免费看的视频 | 国产黄色片在线 | 精品欧美一区二区三区久久久 | 免费观看www7722午夜电影 | 免费在线看v | 日日干夜夜操视频 | 99情趣网视频 | 欧美性生交大片免网 | 精品一区二区在线免费观看 | 国产精品综合在线 | 欧美成人精品xxx | 久久久五月婷婷 | 久久精品在线视频 | 色偷偷男人的天堂av | 免费看污在线观看 | a级黄色片视频 | 国产成人三级在线播放 | 超碰av在线播放 | 五月在线视频 | 亚洲一级片av | 日韩在观看线 | 五月天激情视频在线观看 | 在线免费色视频 | 女人18毛片90分钟 | 中文字幕亚洲欧美日韩2019 | 色操插 | 又黄又爽又色无遮挡免费 | 中文视频在线看 | 精品国产伦一区二区三区免费 | 国产成人免费 | 免费观看一级成人毛片 | 91九色国产蝌蚪 | 欧美影片| 久久福利精品 | 四虎免费av | 免费看高清毛片 | 午夜美女wwww | av在线观| 日韩成人在线免费观看 | 国产九色91 | 国产精品久久久久久久久久三级 | 中文字幕一区2区3区 | 欧美片网站yy | 国产男男gay做爰 | 玖玖在线观看视频 | 丁香五月亚洲综合在线 | 国产亚洲欧美精品久久久久久 | 国产黄免费| 菠萝菠萝蜜在线播放 | 欧美一区二区日韩一区二区 | 九月婷婷色 | 五月婷av | 国产高清视频免费 | 亚洲综合婷婷 | 成人国产一区 | 精品99免费视频 | 久久综合久久综合九色 | 97视频免费在线观看 | 亚洲国产精品日韩 | 欧美精品一区二区蜜臀亚洲 | 日韩丝袜在线观看 | 91日韩在线专区 | 欧美精品三级在线观看 | 中文日韩在线 | 手机成人av在线 | 综合色婷婷 | 激情丁香综合五月 | 91色在线观看 | 国产一级精品在线观看 | 国产精品一区在线观看 | 精品uu | 亚洲激情网站免费观看 | 国产精品资源 | 久久这里精品视频 | 国产色网站 | 激情欧美网| 久久天天躁狠狠躁夜夜不卡公司 | 久草在线费播放视频 | 免费在线观看污 | 免费看污污视频的网站 | 成人免费看黄 | 亚洲精品乱码久久久久 | 最近更新中文字幕 | 久久精品香蕉 | 亚洲精品国产精品乱码在线观看 | 久久人人爽人人片av | 色88久久| 国产精品私人影院 | 国产色拍拍拍拍在线精品 | 日本三级全黄少妇三2023 | 久久精品综合 | 国产黄色片在线免费观看 | 久久人人爽人人爽人人 | www.夜夜干.com | 九月婷婷综合网 | 久久国产精品影视 | 国产精品一区二区三区免费视频 | 欧美精品黑人性xxxx | 一区二区三区免费在线观看 | 国产专区一| 国产人成在线观看 | 欧美男男tv网站 | 99看视频在线观看 | 国产视频在线观看一区二区 | 99精品免费在线观看 | 亚洲欧美激情插 | 国产精品久久久久久久毛片 | 少妇高潮流白浆在线观看 | 91精品视频在线免费观看 | 日韩不卡高清 | 国产拍揄自揄精品视频麻豆 | 三级大片网站 | 一区二区三区日韩在线观看 | a在线一区 | 天天干天天操天天做 | 成年人国产在线观看 | 国产尤物一区二区三区 | 日韩高清片 | 天天射天天干 | 超碰97免费 | 91精品国产99久久久久久久 | 丰满少妇在线观看 | 天天综合91 | 亚洲在线视频网站 | 五月婷婷六月丁香 | 日韩一二区在线观看 | 久久国产一区二区 | 99精品久久久久 | 亚洲在线免费视频 | 国产一区二区久久久 | 91探花系列在线播放 | 精品自拍sae8—视频 | 国产午夜一区二区 | 日韩| 怡红院av| 99精品热视频只有精品10 | 欧美韩国日本在线观看 | 欧美中文字幕第一页 | 久久热亚洲 | 国产精品麻豆欧美日韩ww | 国产精品国产三级国产aⅴ9色 | 中文字幕一区二区三区四区 | 久久久久日本精品一区二区三区 | 亚洲在线视频免费 | 欧美综合色在线图区 | 久久9精品 | 国产精品久久久久免费观看 | 亚洲成人软件 | 韩国在线一区二区 | 日韩在线观看高清 | 久草免费手机视频 | 国产日韩精品一区二区 | 日韩欧美高清免费 | 久艹视频在线观看 | 久久久九色精品国产一区二区三区 | 天天综合天天做 | 中文一二区 | 亚洲欧美视频一区二区三区 | 黄色国产区 | 亚洲永久精品视频 | 日躁夜躁狠狠躁2001 | 国产精品专区在线观看 | 欧美精品亚洲精品日韩精品 | av在线播放快速免费阴 | 91九色蝌蚪视频网站 | 成 人 黄 色 免费播放 | 国产精品久久久久久久久久白浆 | 日日干网址 | 久久久久女教师免费一区 | 91黄色视屏| 天天操天天操天天操 | 久久久天天操 | 国产不卡视频在线 | 综合在线色 | 日韩一级黄色av | 四虎www com| 婷婷丁香久久五月婷婷 | 亚洲视屏在线播放 | 欧美日韩精品免费观看视频 | 五月婷婷网站 | 在线观看精品黄av片免费 | 亚洲欧洲av在线 | 在线高清av| 丝袜足交在线 | 色99网| 一区二区三区免费看 | 粉嫩av一区二区三区四区在线观看 | 丁香久久综合 | 久久久久久久久久久久影院 | 成年人免费观看在线视频 | 成人av一二三区 | 免费观看完整版无人区 | 欧美亚洲专区 | 激情图片区 | 精品日韩中文字幕 | 国产婷婷vvvv激情久 | 在线免费观看国产精品 | 免费福利在线观看 | 日韩网站中文字幕 | 久草男人天堂 | 日韩av手机在线观看 | 婷婷去俺也去六月色 | 亚洲高清在线观看视频 | 久久久久久久国产精品 | 99中文视频在线 | 深爱激情亚洲 | 中文字幕免费一区二区 | 国产一二区免费视频 | 91免费看黄色 | 国产乱码精品一区二区三区介绍 | 久草青青在线观看 | 成人午夜黄色影院 | 97超碰精品 | 亚洲欧美一区二区三区孕妇写真 | 欧美性黑人 | 中文电影网 | 黄色成人影院 | 成人综合婷婷国产精品久久免费 | 久草资源免费 | 成年人免费在线观看 | 色美女在线 | www.色午夜.com | 欧美一级黄大片 | av成人动漫在线观看 | 91丨九色丨首页 | 国产高清精品在线 | 中文字幕在线资源 | 91污在线观看 | 黄色电影网站在线观看 | 天天综合网久久综合网 | 久久精品播放 | 久久精品牌麻豆国产大山 | 国产成人久 | 久久久久久久久久久精 | 久久精品日韩 | www日韩在线观看 | 免费一级片在线观看 | 亚洲另类视频在线 | 在线免费观看羞羞视频 | 亚洲欧洲精品一区二区 | 一区在线观看视频 | 91九色在线观看 | 麻豆av一区二区三区在线观看 | 三级黄色免费 | 婷婷丁香在线视频 | 免费观看午夜视频 | 啪啪动态视频 | 九九视频在线观看视频6 | 午夜久久久久久久久久影院 | 五月花婷婷 | 国产高清精品在线观看 | 亚洲欧美视频在线观看 | 亚洲mv大片欧洲mv大片免费 | 一级黄色片在线观看 | 97精品视频在线播放 | 国产亚洲观看 | av在线免费在线 | 天海翼一区二区三区免费 | 久久激情久久 | 久久6精品| 天天看天天操 | 精品久久久久一区二区国产 | 在线观看免费成人 | 国产日韩欧美中文 | 在线观看免费国产小视频 | 99色国产 | 久久这里有 | 国产精品无av码在线观看 | 99热高清 | 精品国产乱码一区二区三区在线 | 蜜臀一区二区三区精品免费视频 | 亚洲国内精品视频 | 久久伊人五月天 | 91香蕉视频在线 | 最新av在线播放 | 欧美一区日韩一区 | 日韩中文字幕第一页 | 欧美日韩伦理一区 | 97人人精品 | 91av视频在线播放 | 午夜av免费看 | www久草| 亚洲精品资源在线观看 | 精品国产三级 | 色av资源网 | 最近中文字幕在线中文高清版 | 免费看的黄网站软件 | 国产精品入口麻豆 | 99在线观看免费视频精品观看 | 综合色站| 最新午夜电影 | 亚洲欧洲av在线 | 久久人人爽人人人人片 | 天堂网av在线 | 四虎亚洲精品 | 一二三区视频在线 | 丁香5月婷婷 | 亚洲精品在线免费看 | 国产精品美女久久久久久久网站 | 国产精品久久久久久久久久久久久 | 激情婷婷网 | 免费在线观看国产精品 | 国产一区二区三区午夜 | 成人免费看片网址 | 97超碰福利久久精品 | 嫩小bbbb摸bbb摸bbb | 午夜精品福利影院 | 欧美韩日在线 | 在线看小早川怜子av | 91大神精品视频 | 国产欧美精品xxxx另类 | 欧美激情精品 | 国产一级在线观看 | 久草视频在线免费看 | 日韩一级电影网站 | 亚洲精品久久久久中文字幕m男 | 国产一级h| 91看片在线看片 | 国产一区二区高清视频 | 国产福利中文字幕 | 激情综合网在线观看 | 99久久精品日本一区二区免费 | 日韩精品91偷拍在线观看 | 日韩一级成人av | 最新国产精品久久精品 | 在线视频精品播放 | 又粗又长又大又爽又黄少妇毛片 | 天天插天天色 | 91精品专区| 黄色av电影免费观看 | 国产一区二区三区高清播放 | 性色av一区二区三区在线观看 | 国产视频精品久久 | 91电影福利 | 久久国产香蕉视频 | 在线观看视频你懂的 | 久久99久久精品国产 | 国产精品毛片一区二区在线 | 黄色一级大片免费看 | 国产一级三级 | 一区二区 不卡 | 欧美激情第八页 | 久久最新视频 | a黄色片在线观看 | 国产在线2020 | 国产二区免费视频 | 亚洲精品午夜aaa久久久 | 少妇视频一区 | 国产原创在线视频 | 综合网婷婷 | 日韩欧美视频在线免费观看 | 人人揉人人揉人人揉人人揉97 | 日韩一二区在线观看 | 免费国产在线精品 | 欧美在线不卡一区 | 日韩亚洲欧美中文字幕 | 国产精品久久久久婷婷 | 国产拍揄自揄精品视频麻豆 | 国产成人三级三级三级97 | 日韩性网站 | 国产麻豆剧传媒免费观看 | 久久国产精品免费观看 | av高清一区 | 日韩午夜在线 | 天天操天天色天天 | 国产黄色精品在线观看 | 在线精品视频在线观看高清 | 丁香网婷婷 | 欧美aa一级片 | 青青五月天 | 亚洲欧美日韩精品久久久 | 国产一级二级在线 | 国产 精品 资源 | 免费高清在线一区 | 日韩高清成人在线 | www色片| 成人 亚洲 欧美 | 久久视频在线观看中文字幕 | 久久午夜视频 | 亚洲乱码在线观看 | 日韩在线视频免费看 | 色综合久久久久综合99 | 97国产大学生情侣酒店的特点 | 日韩字幕| 国产精品第一视频 | 国产精品高 | 午夜精品久久久久久久久久久久久久 | 免费a网 | 久久精品国产免费观看 | 91av大全 | 欧美激情亚洲综合 | 久久在视频 | 99国产一区二区三精品乱码 | 国产精品无 | 久草电影免费在线观看 | 99r在线 | 97在线视频免费看 | 国产精品永久久久久久久www | 日韩欧美国产视频 | 最新日韩在线观看视频 | 国产亚洲精品日韩在线tv黄 | 色狠狠干| 狠狠干五月天 | 国产区在线 | 国产精品va在线 | 国产精品久久久久9999 | 国产亚洲精品久久19p | 久草在线久草在线2 | 天天在线操| 日韩精品2区 | 日本久久久久久久久久 | 国产综合福利在线 | 免费日韩电影 | 国产视频91在线 | 特级黄色视频毛片 | 亚洲精品影视在线观看 | 区一区二在线 | 亚洲人片在线观看 | 久草免费在线视频观看 | 欧美精品一区二区在线播放 | 91少妇精拍在线播放 | 日韩精品短视频 | 久久久久久国产精品久久 | 欧美国产精品久久久久久免费 | 在线www色 | 九九久久影院 | 一级黄色毛片 | 国产精品麻豆欧美日韩ww | 久久网址| 亚洲春色综合另类校园电影 | 激情五月激情综合网 | 国产在线成人 | 夜夜躁日日躁狠狠躁 | 久久久伦理 | 久久精品国产99 | 久久午夜精品视频 | 在线观看 亚洲 | 久久久高清免费视频 | 天天色天天操综合 | 免费在线观看国产精品 | 国产91探花| 国产你懂的在线 | 久久久久国产精品厨房 | 国产98色在线 | 日韩 | 国产精品涩涩屋www在线观看 | a成人v在线 | 国产精品久久久久久久久免费看 | 亚洲专区在线播放 | 日韩精品欧美精品 | 8x成人在线 | av丝袜天堂 | 蜜臀av免费一区二区三区 | 成人在线一区二区三区 | 国产一区二区精品 | 黄色一及电影 | 一本一本久久a久久精品综合 | 人人插人人费 | 在线视频app | 久久国产精品偷 | 国产精品综合久久久 | 免费黄av | av日韩av| 天天操天天干天天干 | 日韩免费在线一区 | 亚洲日本欧美 | 黄色网在线播放 | 99久久综合狠狠综合久久 | 激情视频久久 | 国产免费一区二区三区最新 | 日本精品中文字幕在线观看 | 深爱婷婷激情 | 午夜视频日本 | 在线看小早川怜子av | 国产日本在线观看 | 国产麻豆果冻传媒在线观看 | 一区二区三区手机在线观看 | 99精品久久久久久久 | 欧美精品久久久久a | 中文字幕视频一区二区 | 亚洲最新精品 | av高清不卡 | 97在线视| 国产免费叼嘿网站免费 | 主播av在线 | 成人黄色在线看 | 亚洲国产成人高清精品 | 8x成人在线| 激情综合色图 | 国产精品午夜久久久久久99热 | 国产高清 不卡 | 日韩中文字幕第一页 | 国产区高清在线 | 国产在线最新 | 久草.com| 91传媒91久久久 | 超碰.com| 在线观看中文字幕亚洲 | 天天射天天艹 | 国产欧美精品一区二区三区 | 99操视频| 日韩成人邪恶影片 | 日本精品视频一区 | 九九日九九操 | 久久精品婷婷 | 亚洲精品午夜久久久久久久 | 久草| 久久五月精品 | 日本韩国欧美在线观看 | 天天做天天爱天天爽综合网 | 欧美性极品xxxx娇小 | 日韩av高清 | 成人va天堂 | 深爱激情久久 | 丁香av | 麻豆激情电影 | 超碰激情在线 | 天天操天天摸天天射 | 在线免费试看 | 91久久久久久国产精品 | 狠狠躁日日躁狂躁夜夜躁av | 91在线色 | 久久伊人精品一区二区三区 | 九草在线观看 | 亚洲免费一级 | 成年人在线观看视频免费 | 不卡av电影在线观看 | av综合网址 | 亚洲国产精品日韩 | 国产精品九九九九九九 | 国产精品久久久久久久午夜 | 亚洲精品一区二区三区四区高清 | 日韩va在线观看 | 久久成年人视频 | 悠悠av资源片 | 毛片区| 美女国内精品自产拍在线播放 | 五月天丁香视频 | 国产成人精品一区一区一区 | www.91av在线 | 久久久久久黄色 | 色欧美88888久久久久久影院 | 激情婷婷欧美 | 日韩免费观看av | 黄污网站在线观看 | 久久再线视频 | 天天添夜夜操 | 91亚洲综合| 中文字幕第一页在线 | 日韩中文在线电影 | 国产精品精品 | 黄色不卡av | 在线观看视频一区二区 | 国产精品去看片 | 91重口视频 | 免费h精品视频在线播放 | 日韩丝袜视频 | www日日 | 国产精品一区二区在线播放 | 日日草视频 | 91精品久久香蕉国产线看观看 | 97色噜噜 | 在线观看日韩视频 | 男女拍拍免费视频 | 香蕉久草在线 | 国产成人精品在线播放 | 天天插天天色 | av免费看看| 91视频首页| 国产精品资源在线 |