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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Xilinx XDMA 数据传输sgdma 驱动代码分析

發布時間:2024/3/24 编程问答 54 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Xilinx XDMA 数据传输sgdma 驱动代码分析 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Xilinx XDMA 數據傳輸sgdma 驅動代碼分析

我的之前兩篇文章有介紹到上位機軟件的邏輯該如何控制,驅動代碼的框架是怎樣的,驅動的整體邏輯在linux系統中是如何實現的,感興趣的小伙伴可以去考古。
Xilinx XDMA 上位機應用程序控制邏輯
Xilinx XDMA驅動代碼分析及用法
XDMA 傳輸的核心部分代碼是cdev_sgdma.c ,利用DMA進行數據傳輸,傳輸方式為sgdma的傳輸方式,

1、SG-DMA介紹

Scatter-Gather DMA ,分散/集中映射是流式 DMA 映射的一個特例。它將幾個緩沖區集中到一起進行一次映射,并在一個 DMA 操作中傳送所有數據。這些分散的緩沖區由分散表結構scatterlist來描述,多個分散的緩沖區的分散表結構組成緩沖區的struct scatterlist數組。 [DMA技術和及其SG模式](https://blog.csdn.net/chinamaoge/article/details/104606865)

2、sgdma IO文件操作接口

cdev_sgdma.c 是xdma 驅動傳輸的主要接口,驅動正確安裝后會生成xdma0_c2h_0 xdma0_h2c_0 的讀寫設備。

上位機程序。通過文件io.read\write 調用驅動的read\write,以觸發sgdma進行數據傳輸,傳輸完成會有中斷,之余中斷時如何使用的,感興趣的朋友看一下一起的文章。

char_sgdma_read 、char_sgdma_write 兩個接口調用同一個接口進行數據輸出, 接口以一個bool變量驅動,數據是讀還是寫。

函數原型:

static ssize_t char_sgdma_read_write(struct file *file, const char __user *buf,size_t count, loff_t *pos, bool write)

函數的調用關系如圖

static ssize_t char_sgdma_read_write(struct file *file, const char __user *buf,size_t count, loff_t *pos, bool write) {int rv;ssize_t res = 0;struct xdma_cdev *xcdev = (struct xdma_cdev *)file->private_data;struct xdma_dev *xdev;struct xdma_engine *engine;struct xdma_io_cb cb;rv = xcdev_check(__func__, xcdev, 1);if (rv < 0)return rv;xdev = xcdev->xdev;engine = xcdev->engine;dbg_tfr("file 0x%p, priv 0x%p, buf 0x%p,%llu, pos %llu, W %d, %s.\n",file, file->private_data, buf, (u64)count, (u64)*pos, write,engine->name);if ((write && engine->dir != DMA_TO_DEVICE) ||(!write && engine->dir != DMA_FROM_DEVICE)) {pr_err("r/w mismatch. W %d, dir %d.\n",write, engine->dir);return -EINVAL;}rv = check_transfer_align(engine, buf, count, *pos, 1);if (rv) {pr_info("Invalid transfer alignment detected\n");return rv;}memset(&cb, 0, sizeof(struct xdma_io_cb));cb.buf = (char __user *)buf;cb.len = count;cb.ep_addr = (u64)*pos;cb.write = write;rv = char_sgdma_map_user_buf_to_sgl(&cb, write);if (rv < 0)return rv;res = xdma_xfer_submit(xdev, engine->channel, write, *pos, &cb.sgt,0, write ? h2c_timeout * 1000 :c2h_timeout * 1000);char_sgdma_unmap_user_buf(&cb, write);return res; }

這個接口的主要的邏輯就是:

  • 數據對齊檢測:check_transfer_align,主要是檢查AXi 總線 non-incremental addressing mode
  • 進行數據的地址映射:char_sgdma_map_user_buf_to_sgl
  • 數據傳輸:xdma_xfer_submit
  • unmap: char_sgdma_unmap_user_buf
  • 我們先看char_sgdma_map_user_buf_to_sgl()

    static int char_sgdma_map_user_buf_to_sgl(struct xdma_io_cb *cb, bool write) {struct sg_table *sgt = &cb->sgt;unsigned long len = cb->len;void __user *buf = cb->buf;struct scatterlist *sg; /* sgdma 傳輸所需的 scatterlist *//* 會先算出傳輸的數據有多少個Page */unsigned int pages_nr = (((unsigned long)buf + len + PAGE_SIZE - 1) -((unsigned long)buf & PAGE_MASK))>> PAGE_SHIFT;int i;int rv;if (pages_nr == 0)return -EINVAL;/*更具pages的個數,申請所需的sg_table,單個scatterlist 是沒有意義的,*//*需要多個scatterlist組成一個數組,以表示在物理上不連續的虛擬地址空間*/if (sg_alloc_table(sgt, pages_nr, GFP_KERNEL)) {pr_err("sgl OOM.\n");return -ENOMEM;}cb->pages = kcalloc(pages_nr, sizeof(struct page *), GFP_KERNEL);if (!cb->pages) {pr_err("pages OOM.\n");rv = -ENOMEM;goto err_out;}/*get_user_pages_fast調用這個函數進行獲取當前進程的頁,這個函數不鎖mm*/rv = get_user_pages_fast((unsigned long)buf, pages_nr, 1/* write */,cb->pages);/* No pages were pinned */if (rv < 0) {pr_err("unable to pin down %u user pages, %d.\n",pages_nr, rv);goto err_out;}/* Less pages pinned than wanted */if (rv != pages_nr) {pr_err("unable to pin down all %u user pages, %d.\n",pages_nr, rv);cb->pages_nr = rv;rv = -EFAULT;goto err_out;}for (i = 1; i < pages_nr; i++) {if (cb->pages[i - 1] == cb->pages[i]) {pr_err("duplicate pages, %d, %d.\n",i - 1, i);rv = -EFAULT;cb->pages_nr = pages_nr;goto err_out;}}/*將page相關的data cache內容寫回到內存*//*將page中指定offset、指定長度的內存賦給指定的scatterlist*/sg = sgt->sgl;for (i = 0; i < pages_nr; i++, sg = sg_next(sg)) {unsigned int offset = offset_in_page(buf);unsigned int nbytes =min_t(unsigned int, PAGE_SIZE - offset, len);flush_dcache_page(cb->pages[i]);sg_set_page(sg, cb->pages[i], nbytes, offset);buf += nbytes;len -= nbytes;}if (len) {pr_err("Invalid user buffer length. Cannot map to sgl\n");return -EINVAL;}cb->pages_nr = pages_nr;return 0;err_out:char_sgdma_unmap_user_buf(cb, write);return rv; }

    這是將用戶層的數據進行映射,接下來就是數據的傳輸

    xdma_xfer_submit:

    xdma_xfer_submit 會調用 transform_queue進行數據傳輸,它將數據Add 到DMA的傳輸表中,進行數據傳輸。

    static int transfer_queue(struct xdma_engine *engine,struct xdma_transfer *transfer) {int rv = 0;struct xdma_transfer *transfer_started;struct xdma_dev *xdev;unsigned long flags;if (!engine) {pr_err("dma engine NULL\n");return -EINVAL;}if (!engine->xdev) {pr_err("Invalid xdev\n");return -EINVAL;}if (!transfer) {pr_err("%s Invalid DMA transfer\n", engine->name);return -EINVAL;}if (transfer->desc_num == 0) {pr_err("%s void descriptors in the transfer list\n",engine->name);return -EINVAL;}dbg_tfr("%s (transfer=0x%p).\n", __func__, transfer);xdev = engine->xdev;if (xdma_device_flag_check(xdev, XDEV_FLAG_OFFLINE)) {pr_info("dev 0x%p offline, transfer 0x%p not queued.\n", xdev,transfer);return -EBUSY;}/* lock the engine state */spin_lock_irqsave(&engine->lock, flags);engine->prev_cpu = get_cpu();put_cpu();/* engine is being shutdown; do not accept new transfers */if (engine->shutdown & ENGINE_SHUTDOWN_REQUEST) {pr_info("engine %s offline, transfer 0x%p not queued.\n",engine->name, transfer);rv = -EBUSY;goto shutdown;}/* mark the transfer as submitted */transfer->state = TRANSFER_STATE_SUBMITTED;/* add transfer to the tail of the engine transfer queue */list_add_tail(&transfer->entry, &engine->transfer_list);/* engine is idle? */if (!engine->running) {/* start engine */dbg_tfr("%s(): starting %s engine.\n", __func__, engine->name);transfer_started = engine_start(engine);if (!transfer_started) {pr_err("Failed to start dma engine\n");goto shutdown;}dbg_tfr("transfer=0x%p started %s engine with transfer 0x%p.\n",transfer, engine->name, transfer_started);} else {dbg_tfr("transfer=0x%p queued, with %s engine running.\n",transfer, engine->name);}shutdown:/* unlock the engine state */dbg_tfr("engine->running = %d\n", engine->running);spin_unlock_irqrestore(&engine->lock, flags);return rv; } /* transfer_queue() - Queue a DMA transfer on the engine** @engine DMA engine doing the transfer* @transfer DMA transfer submitted to the engine** Takes and releases the engine spinlock*/ static int transfer_queue(struct xdma_engine *engine,struct xdma_transfer *transfer) {int rv = 0;struct xdma_transfer *transfer_started;struct xdma_dev *xdev;unsigned long flags;if (!engine) {pr_err("dma engine NULL\n");return -EINVAL;}if (!engine->xdev) {pr_err("Invalid xdev\n");return -EINVAL;}if (!transfer) {pr_err("%s Invalid DMA transfer\n", engine->name);return -EINVAL;}if (transfer->desc_num == 0) {pr_err("%s void descriptors in the transfer list\n",engine->name);return -EINVAL;}dbg_tfr("%s (transfer=0x%p).\n", __func__, transfer);xdev = engine->xdev;if (xdma_device_flag_check(xdev, XDEV_FLAG_OFFLINE)) {pr_info("dev 0x%p offline, transfer 0x%p not queued.\n", xdev,transfer);return -EBUSY;}/* lock the engine state */spin_lock_irqsave(&engine->lock, flags);engine->prev_cpu = get_cpu();put_cpu();/* engine is being shutdown; do not accept new transfers */if (engine->shutdown & ENGINE_SHUTDOWN_REQUEST) {pr_info("engine %s offline, transfer 0x%p not queued.\n",engine->name, transfer);rv = -EBUSY;goto shutdown;}/* mark the transfer as submitted */transfer->state = TRANSFER_STATE_SUBMITTED;/* add transfer to the tail of the engine transfer queue */list_add_tail(&transfer->entry, &engine->transfer_list);/* engine is idle? */if (!engine->running) {/* start engine */dbg_tfr("%s(): starting %s engine.\n", __func__, engine->name);transfer_started = engine_start(engine);if (!transfer_started) {pr_err("Failed to start dma engine\n");goto shutdown;}dbg_tfr("transfer=0x%p started %s engine with transfer 0x%p.\n",transfer, engine->name, transfer_started);} else {dbg_tfr("transfer=0x%p queued, with %s engine running.\n",transfer, engine->name);}shutdown:/* unlock the engine state */dbg_tfr("engine->running = %d\n", engine->running);spin_unlock_irqrestore(&engine->lock, flags);return rv; }

    接下來就是unmap, 這里的代碼很簡單。

    以上就是傳輸一次數據所調用的接口,與基本邏輯。

    相關的的驅動及測試代碼,以及FPGA工程,已經上傳至網盤,有需要的朋友可以自行下載。
    鏈接:https://pan.baidu.com/s/1wdPqUf8_2K6r8ZbVupizrw
    提取碼:i2sw

    總結

    以上是生活随笔為你收集整理的Xilinx XDMA 数据传输sgdma 驱动代码分析的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

    国产黄在线 | 久精品在线 | 亚洲人xxx | 国产精品久久久久久久久久久久 | 菠萝菠萝蜜在线播放 | 91cn国产在线| 日韩av午夜在线观看 | 九九热在线观看 | 午夜久久久久久久久久影院 | 日韩v在线91成人自拍 | 亚洲欧洲一区二区在线观看 | 欧美日韩69 | 热re99久久精品国产66热 | 91视频88av | 久久国产高清视频 | 成人av片在线观看 | 日韩精品免费一区二区在线观看 | 91麻豆精品国产91久久久使用方法 | 亚洲做受高潮欧美裸体 | 中文字幕一区在线 | 视频国产在线 | 天天草天天操 | 一级性视频| 久久天堂影院 | 亚洲精品乱码久久久久久蜜桃动漫 | 亚洲专区欧美专区 | 欧美精品一区二区性色 | 欧美黄网站 | 国产综合在线观看视频 | 成人免费观看a | 免费亚洲精品视频 | 久久久久在线观看 | 国产系列在线观看 | 四虎最新域名 | 久久久久久久网 | 久久久久久蜜av免费网站 | 日韩欧美电影在线 | 亚洲一本视频 | 最近中文字幕高清字幕免费mv | 三级黄色在线观看 | 中文字幕免费高清 | 在线国产视频一区 | 在线小视频你懂得 | 99色视频在线 | 中文字幕免费在线看 | 狠狠色丁香久久婷婷综合五月 | 国产精在线 | 免费网站黄 | av在线a| 欧美日韩国产在线 | 国产xxxx| 成人蜜桃网 | 亚洲欧美成人网 | 日韩中文字幕免费在线播放 | 天堂av影院 | 黄色网免费 | 亚洲日韩中文字幕在线播放 | 狠狠色伊人亚洲综合网站色 | 亚洲精品乱码久久久久v最新版 | 中文字幕123区 | 成年人免费在线观看网站 | 97操操| 免费成人短视频 | 国产精品婷婷 | 2022久久国产露脸精品国产 | 天天插天天狠天天透 | 国产精品黄网站在线观看 | 精品国产精品久久一区免费式 | 国产a级片免费观看 | 国产麻豆视频网站 | 日韩欧美精品在线观看视频 | 欧美亚洲另类在线视频 | 亚洲成aⅴ人片久久青草影院 | 97人人澡人人添人人爽超碰 | 97国产在线视频 | 久草剧场 | 欧美性另类 | 日韩免费电影网站 | 蜜臀av性久久久久蜜臀aⅴ流畅 | 精品在线观看一区二区 | 涩涩资源网| 久草免费福利在线观看 | 天天激情天天干 | 97国产电影 | 黄免费在线观看 | 激情伊人 | 日本中文乱码卡一卡二新区 | 天海冀一区二区三区 | 久久情爱 | 日本三级久久 | 日日操天天爽 | 最近免费中文字幕mv在线视频3 | a级国产乱理伦片在线播放 久久久久国产精品一区 | 亚洲天堂精品视频在线观看 | 欧美精品久久久久久久久久 | 精品一区二区日韩 | 日韩 在线a | 国产精品一区二区三区免费视频 | 亚洲一级片免费观看 | 国产高清无线码2021 | 日韩欧美视频在线观看免费 | 91成人精品一区在线播放69 | 欧美亚洲xxx | 欧美有色 | 久久成人在线视频 | 欧美国产日韩在线视频 | 国产视频1 | www.天天操 | av网站播放 | 久久久久久久久影院 | 在线观看中文字幕亚洲 | 免费在线国产视频 | 精品欧美乱码久久久久久 | 日本公妇色中文字幕 | 99热最新网址 | 在线综合色| 天堂网一区二区三区 | 久久久精品国产免费观看同学 | 日韩免费一级a毛片在线播放一级 | 天天综合导航 | 色悠悠久久综合 | 久久国产视屏 | 国产精品大片免费观看 | 成人黄色电影在线播放 | a视频免费在线观看 | 亚洲精品日韩av | 在线免费观看黄色大片 | 国内精品免费久久影院 | 久久视屏网 | 欧美精品久久久久久久久久久 | 国产一区福利在线 | 四虎免费在线观看 | 久久艹精品| 国产精品久久网站 | 特黄一级毛片 | 丁香婷婷激情国产高清秒播 | 黄色免费在线视频 | 亚洲狠狠婷婷综合久久久 | 91亚洲综合 | 国产99黄| 久久草网站 | 日本韩国精品在线 | 人人讲下载 | 最近中文字幕国语免费高清6 | 国产中文字幕在线播放 | 中文国产成人精品久久一 | 综合在线色 | 精品999久久久 | 精品亚洲一区二区 | 中文字幕观看在线 | 超碰在线公开免费 | 久草网站| 成人av网站在线 | 99久久er热在这里只有精品66 | 91av视频在线免费观看 | 在线日韩中文 | 最近中文国产在线视频 | 91视频在线观看下载 | 久久黄页 | 欧美看片| 久久国内免费视频 | 免费看久久 | 综合影视 | 成人h动漫在线看 | 亚洲精品mv在线观看 | www.色爱| 日韩精品免费一区 | 亚洲欧美精品一区 | 日韩在线资源 | 伊人亚洲综合 | 波多野结衣在线观看一区二区三区 | 麻豆视频免费网站 | 久久精品视频3 | 国产主播大尺度精品福利免费 | 欧美成人精品三级在线观看播放 | 久久天堂亚洲 | 国产99久久九九精品免费 | 欧美成人tv | 久久综合色影院 | 久久午夜色播影院免费高清 | 国产一区久久 | 高清精品视频 | 黄色网址国产 | bbbb操bbbb| 亚洲性少妇性猛交wwww乱大交 | 亚洲另类xxxx | 国产精品久久片 | 国产精品你懂的在线观看 | 日日精品 | 91精品久久久久久久99蜜桃 | 人人搞人人爽 | 欧美怡红院| 色婷婷五| 久久国产手机看片 | 香蕉蜜桃视频 | 99久久精品免费看国产四区 | 激情五月***国产精品 | 成人免费xxx在线观看 | 在线91色 | 日韩成人邪恶影片 | 91视频在线国产 | 97视频在线免费 | 在线观看黄污 | 久久欧美视频 | 国产成人三级在线 | 免费看片亚洲 | 免费观看v片在线观看 | 中文字幕在线视频一区二区 | 国产精品久久久久久超碰 | 99久e精品热线免费 99国产精品久久久久久久久久 | 色婷婷六月 | 国产乱老熟视频网88av | 少妇视频一区 | 99热这里只有精品在线观看 | 视频91| 色婷婷综合五月 | 色网站在线免费观看 | 91视视频在线直接观看在线看网页在线看 | 在线看小早川怜子av | 午夜视频福利 | 91av欧美| 一级免费看视频 | 国产一级免费电影 | 美国三级黄色大片 | 四虎影视成人 | 亚洲国产综合在线 | 又黄又爽又刺激的视频 | 亚洲免费一级电影 | 四虎永久免费在线观看 | 免费男女羞羞的视频网站中文字幕 | 久久综合国产伦精品免费 | 最新av网址在线观看 | 精品产品国产在线不卡 | 制服丝袜一区二区 | 天天干天天干天天 | 国产一区二区免费 | 在线看一级片 | 天天插天天狠天天透 | 天天亚洲综合 | 国产美女在线观看 | 久久国产精品区 | 久久久影院官网 | 亚洲欧美日韩精品久久久 | 国产日韩精品一区二区在线观看播放 | 精品久久网| 岛国av在线不卡 | 国产一级精品在线观看 | 草莓视频在线观看免费观看 | 欧美激情操 | 国产一二区免费视频 | 亚洲国产中文在线观看 | 日韩欧美网站 | 蜜桃av久久久亚洲精品 | 黄色网址中文字幕 | 91成人在线看| 99se视频在线观看 | 日韩av在线一区二区 | 黄色亚洲| 丁香五香天综合情 | 亚州视频在线 | 一区二区在线不卡 | 日韩精品黄 | 五月婷婷在线观看 | 欧美老女人xx | 日韩av不卡播放 | 色多多在线观看 | 亚洲精品小视频 | 九九热视频在线播放 | 日韩av图片| 国产九九热视频 | 五月天狠狠操 | 国产高清一级 | 麻豆视频在线观看免费 | 亚洲一级久久 | 夜色在线资源 | 国产手机视频精品 | 五月天狠狠操 | 日韩免费在线网站 | 免费观看xxxx9999片 | 中文字幕国产一区二区 | 久久久国产精品一区二区中文 | 91精品办公室少妇高潮对白 | 在线观看第一页 | av成人动漫在线观看 | 日本精品久久久久中文字幕 | 91在线视频在线观看 | 大荫蒂欧美视频另类xxxx | 精品久久一 | 久久a v电影 | 色a资源在线 | 99精品国产兔费观看久久99 | 国产精品久久久久久久久久久久午 | 黄色一集片 | 日韩和的一区二在线 | 99国产精品久久久久久久久久 | 99久久综合精品五月天 | 中文字幕久久精品亚洲乱码 | 国产 亚洲 欧美 在线 | 综合激情av | 91成人午夜 | 91最新在线视频 | 国产欧美精品一区二区三区 | 国产一区二区三区久久久 | 国产黄色精品在线观看 | 91少妇精拍在线播放 | 日韩高清免费电影 | 成人avav| www.夜夜爽 | 91av电影在线观看 | 日日夜夜噜噜噜 | 成年人免费观看国产 | 网站在线观看日韩 | 欧美中文字幕第一页 | 国产又黄又爽又猛视频日本 | 91在线中文字幕 | 欧美日韩精品免费观看视频 | 亚洲网久久 | 成 人 黄 色 视频 免费观看 | 午夜少妇 | 天天搞天天干 | 欧美a免费 | 中文网丁香综合网 | 日韩专区av | 91av在线国产 | 亚洲va欧美va人人爽春色影视 | 亚洲综合精品在线 | 日韩欧美不卡 | 日韩av不卡在线播放 | 精品成人免费 | 亚洲午夜精品久久久 | 99久久精品无码一区二区毛片 | 亚洲精品综合在线观看 | 毛片网站在线 | 伊人在线视频 | 久艹在线免费观看 | 成片免费观看视频999 | 久久久久久不卡 | av黄色av| 精品在线观 | 在线免费色视频 | 色婷婷av国产精品 | av在线电影网站 | 五月婷婷,六月丁香 | 久久精品99北条麻妃 | avove黑丝 | 国产va在线观看免费 | 午夜黄色影院 | 久久精品欧美日韩精品 | av怡红院| 亚洲专区中文字幕 | 黄网在线免费观看 | 亚洲日本精品 | 久久av在线 | 黄色av成人在线 | 色久网 | 91av原创| 久草网站在线 | 97在线视频免费看 | 97在线观看免费 | 天天综合网国产 | 亚洲九九九 | 中文字幕av最新更新 | 狠狠色综合网站久久久久久久 | 中文字幕在线观看91 | 婷婷久久综合九色综合 | 激情综合五月天 | 在线亚洲精品 | 国产精品久久久久永久免费观看 | 国内精品久久久久久 | 久草视频在线资源 | 99精品99 | 亚洲人人av| 国产一区二区在线免费播放 | www.国产高清 | 久久久久中文 | 国产视频在线免费 | 一区二区三区中文字幕在线 | 成人av电影在线观看 | 色橹橹欧美在线观看视频高清 | 欧美精品乱码久久久久久按摩 | 天天插天天狠天天透 | 97色婷婷人人爽人人 | 激情综合五月婷婷 | 国产亚洲激情视频在线 | 麻豆成人精品视频 | 欧美韩日精品 | 毛片久久久| 精品一区 在线 | 制服丝袜欧美 | 午夜私人影院久久久久 | 婷婷丁香色综合狠狠色 | 99在线视频精品 | 丁香国产视频 | 久久久久99精品成人片三人毛片 | 久久综合久久综合九色 | 蜜臀av网址 | 久久成年人视频 | 免费在线观看亚洲视频 | 黄色小说在线观看视频 | 在线国产专区 | 肉色欧美久久久久久久免费看 | 免费看片网页 | 激情视频在线观看网址 | 久久免费片 | 亚洲片在线 | 天天干天天操天天操 | 日本不卡一区二区 | 国产老妇av | 久久久精华网 | 国产一区二区精品91 | 久久久午夜影院 | 日韩欧美精品在线视频 | 天天操网 | 亚洲 成人 欧美 | 亚洲年轻女教师毛茸茸 | 日韩精品久久久久久 | 中文字幕国产视频 | 在线免费高清一区二区三区 | 人人涩 | 在线免费视频你懂的 | 99九九免费视频 | 69国产盗摄一区二区三区五区 | 日韩三级中文字幕 | 国产精品久久久久av免费 | 99久久精品日本一区二区免费 | 黄色官网在线观看 | 日韩专区在线观看 | 国产精品 日韩精品 | 亚洲永久精品视频 | av天天在线观看 | 亚洲japanese制服美女 | 777奇米四色 | 精品一区二区精品 | 久精品在线观看 | 日韩一二三 | 精品视频区 | 精品黄色视 | 又色又爽又黄高潮的免费视频 | 综合网av | 精品中文字幕在线观看 | 国产视频一区二区三区在线 | 黄色影院在线免费观看 | 亚洲黄色免费网站 | 亚洲日本va在线观看 | 天天操天天操天天操天天操天天操 | 一区二区中文字幕在线观看 | 久艹视频在线观看 | 丁五月婷婷 | 久久精品香蕉视频 | 日韩一二三 | 日韩激情小视频 | 99riav1国产精品视频 | 日日干 天天干 | 四虎成人精品永久免费av | 91精品一区国产高清在线gif | 国产色中涩| 亚洲精品免费在线观看 | 中文字幕丝袜制服 | 区一区二区三区中文字幕 | 亚洲精品女人 | 婷婷夜夜 | 超碰97在线资源站 | 超碰av在线 | 精品福利在线视频 | 久久久国产精品电影 | 91在线播放视频 | 国产精品久久久久久久av大片 | 在线观看www视频 | 超碰在线观看av | 欧美大片aaa | 91麻豆精品国产午夜天堂 | www久久| 爱情影院aqdy鲁丝片二区 | 国产网站色 | 国产一区二区免费看 | 伊人网av| 天堂久久电影网 | 日韩电影一区二区在线 | 国模一二三区 | 日韩激情影院 | av一区二区三区在线播放 | 日韩.com| 欧美一区二区在线免费观看 | 欧美精品一区二区免费 | 四虎影视成人精品 | 亚洲成人中文在线 | 狠狠狠色丁香综合久久天下网 | 国产无遮挡又黄又爽在线观看 | 成av在线 | 在线视频18在线视频4k | 久久女教师 | 久久国产精品影视 | 麻豆系列在线观看 | 欧美激情精品久久久 | 狠狠狠干狠狠 | 久久99国产视频 | 97国产在线视频 | 日韩区视频 | 日韩高清不卡在线 | 久热电影 | 99在线观看视频网站 | 色a综合| 三级av中文字幕 | 在线观看91精品国产网站 | 日韩在线在线 | 免费在线观看91 | 欧美精品第一 | 日韩三级.com | 国产黄色网 | 特级a老妇做爰全过程 | 久久不卡日韩美女 | 欧美视频网址 | 欧美日韩免费观看一区=区三区 | 国产一级片免费播放 | 国产黄网在线 | 国产一区二区视频在线 | 日本精品视频一区 | 免费视频91| 亚洲最大av在线播放 | x99av成人免费| 亚洲伊人av | 国产精品午夜免费福利视频 | 久久久国产毛片 | 欧美日韩国产色综合一二三四 | 亚洲国产合集 | 日日夜夜天天干 | 91av视频免费在线观看 | 国内三级在线观看 | 成人免费在线视频 | 色播五月激情五月 | 欧美黑人xxxx猛性大交 | 成人欧美一区二区三区黑人麻豆 | 人人爽影院 | 91av视频导航 | 国内精品久久久久久久影视麻豆 | 超碰在线人人艹 | 又色又爽的网站 | 四虎影视成人 | 天天色综合天天 | 日韩成人邪恶影片 | 国产午夜精品免费一区二区三区视频 | 久久中文精品视频 | 日韩av男人的天堂 | 五月婷婷国产 | 香蕉一区| 国产一级免费观看视频 | 97国产在线 | 精品国产三级a∨在线欧美 免费一级片在线观看 | 国产午夜精品一区二区三区欧美 | 亚洲精品久久在线 | 伊人五月天 | 久久成人在线 | 日韩艹 | 亚洲国产美女久久久久 | 国产无区一区二区三麻豆 | 久久久影片 | 香蕉视频91 | 午夜国产一区二区 | a√国产免费a | 欧美久草在线 | 精品免费视频 | 日本韩国欧美在线观看 | 久久久久久久久久久久国产精品 | 99热精品视 | av三级在线免费观看 | 欧美日韩免费观看一区二区三区 | 天天天天射 | 久久精品亚洲精品国产欧美 | 国产在线资源 | 99爱在线| 99热播精品| 可以免费看av | 日本中文不卡 | 国产精品福利视频 | 少妇搡bbbb搡bbb搡aa | 国产高清视频免费 | av再线观看 | 成人h动漫在线看 | 日韩久久久久久久久 | 国产资源精品在线观看 | 91视频在线国产 | 国产第一页在线播放 | 精品亚洲欧美无人区乱码 | 天天摸天天舔 | 中文字幕电影网 | 五月婷婷视频在线 | 婷婷丁香自拍 | 欧美小视频在线 | 麻豆免费视频观看 | 在线 高清 中文字幕 | 人人爽人人看 | 九九热在线视频免费观看 | 97av在线视频免费播放 | 日韩日韩日韩日韩 | 2023亚洲精品国偷拍自产在线 | 五月天天色| 午夜视频99 | 色综合久久天天 | 伊色综合久久之综合久久 | 国产免费国产 | 国内丰满少妇猛烈精品播 | 日韩三级久久 | 99久高清在线观看视频99精品热在线观看视频 | 久久久精品国产免费观看同学 | 亚洲精品综合一二三区在线观看 | 婷婷精品在线视频 | 丁香午夜婷婷 | 人人dvd | 亚洲精品国偷自产在线91正片 | 久久久午夜影院 | 国内精品在线观看视频 | 天天摸天天舔天天操 | 国产喷水在线 | 免费一级特黄录像 | 97超碰在线免费观看 | 欧美色噜噜噜 | 日本黄色免费观看 | 一区二区在线电影 | 中文字幕av一区二区三区四区 | 亚洲精品影视在线观看 | 国产91电影在线观看 | 激情五月婷婷综合网 | 亚洲精品人人 | 特级免费毛片 | 免费久久久久久久 | 日本精品一区二区三区在线播放视频 | 天天操天天射天天爽 | 精品中文字幕视频 | 国产精品毛片一区二区在线 | 亚洲人天堂 | 99在线精品免费视频九九视 | 久久精品久久久精品美女 | 在线亚洲天堂网 | 久久在线免费视频 | 国产视频一区二区在线 | 人人爽人人爱 | 免费a v网站 | 久久免费国产精品 | 夜夜躁天天躁很躁波 | 人人插人人费 | 亚洲视频在线观看网站 | 97在线视频免费播放 | 久久国产女人 | 91一区二区三区久久久久国产乱 | 亚洲激情 在线 | 久久久久久久久久久国产精品 | 国产小视频福利在线 | 国产中文字幕在线免费观看 | 精品福利网 | 91成品人影院 | 毛片久久久 | 久久久久久美女 | 天天色天天射天天干 | 欧美va天堂va视频va在线 | 久久精品91视频 | 欧美日韩中文在线 | 一级性生活片 | 国产成年人av | 国产精品小视频网站 | 日韩欧美视频 | 国产精品综合av一区二区国产馆 | 精品xxx | 日韩在线短视频 | 国产精品美女久久久久久久 | 亚洲黄色激情小说 | 久久国产精品99久久久久久丝袜 | 久久成熟 | 天天爱综合 | 亚洲黄色片一级 | 成人综合婷婷国产精品久久免费 | 国产精品免费观看网站 | 国产小视频在线播放 | 国产精品久久久久久久电影 | 91亚洲国产成人久久精品网站 | 日日爱网站 | 美女视频黄频大全免费 | 天堂在线一区二区三区 | 激情丁香5月 | 精品成人在线 | av成人免费在线观看 | 久草在线资源免费 | av免费看网站 | 天堂在线视频中文网 | 欧美激情精品一区 | 嫩嫩影院理论片 | 日韩午夜精品福利 | 国产黄色片在线免费观看 | 日韩黄色一区 | 免费成人在线网站 | 国产精品久久在线 | 欧美一级免费高清 | 日韩免费播放 | 国产福利一区二区三区在线观看 | 麻豆视频在线观看 | 天天操天天干天天爽 | 免费视频91 | 永久精品视频 | 国产精品久久久久久高潮 | 久久综合成人网 | 国产精品欧美在线 | 久久九九久久九九 | 久久久国产日韩 | 天天射网 | 国产日韩欧美在线影视 | 精品视频免费在线 | 精品国产一区二区三区久久久蜜月 | 欧美精品久久久 | 欧美日产在线观看 | 亚洲一区二区天堂 | 最新亚洲视频 | 在线电影 一区 | 久久视频免费观看 | 插综合网| 国产一区二区三区四区在线 | 久久伦理网| 久久优 | 欧美久久久久久久久久久久 | 国产伦理一区二区三区 | 韩国av免费在线观看 | 操操操夜夜操 | 狠狠狠色丁香综合久久天下网 | 国产精品美女久久久久久久 | 国产乱码精品一区二区蜜臀 | 精品亚洲在线 | 日韩美女高潮 | 天天操天天干天天插 | 久久久久久网址 | 免费看黄在线网站 | 日韩精品一区二区不卡 | 成人毛片一区二区三区 | 九草在线视频 | 久久综合狠狠综合久久激情 | 三级免费黄色 | 国产成人av电影在线 | 六月婷色 | 亚洲欧美国产视频 | 中文字幕在线第一页 | 国产成在线观看免费视频 | 日日夜夜网 | 亚洲精品乱码久久久久久按摩 | 天天干亚洲| 亚洲国产中文字幕 | 免费福利小视频 | 亚州国产精品视频 | 中文字幕a在线 | 最新日韩电影 | 综合影视| 中文字幕一二 | 国产一级在线播放 | 亚洲国产成人精品在线观看 | .国产精品成人自产拍在线观看6 | 美女网站黄在线观看 | 日韩久久网站 | 日韩一区二区免费在线观看 | 中文字幕资源网 | 日韩av区 | 亚洲精品看片 | 日韩在线免费观看视频 | 久久男人中文字幕资源站 | 国产二区av | 久久久免费在线观看 | 四虎永久免费在线观看 | 看片黄网站| 久草观看视频 | 亚洲第一区精品 | 日韩在线观看第一页 | 亚洲精品mv在线观看 | av综合站| 免费精品久久久 | 久久精品国产亚洲a | 日本三级中文字幕在线观看 | 国产精品久久久久高潮 | 国产精品不卡在线播放 | 天天色天天射天天干 | 亚洲欧美国产精品va在线观看 | 毛片网站在线观看 | 久久久久久看片 | 欧美日韩不卡一区二区三区 | 国产高清 不卡 | 亚洲综合成人婷婷小说 | 亚洲精品mv在线观看 | www.com久久久 | 女人18片 | 欧美午夜精品久久久久 | av一区二区三区在线播放 | 天天激情站 | 午夜在线日韩 | 五月婷婷影院 | 久久黄色影院 | 97成人免费视频 | 亚洲欧洲国产精品 | 美女网站在线观看 | 99c视频高清免费观看 | 久久久国产精品成人免费 | 国产视频久久 | av免费观看在线 | 久久久久久久网 | 亚洲人天堂 | 成人精品国产 | 91久久黄色 | 国产免费高清视频 | 欧美另类交在线观看 | 免费在线观看成人小视频 | 精品夜夜嗨av一区二区三区 | 国产精品11| 日韩视频一区二区三区在线播放免费观看 | 欧美少妇bbwhd | 久久少妇 | 中文字幕在线乱 | 国产精品6999成人免费视频 | 国产色在线视频 | 99精品在这里 | 激情av五月婷婷 | 人人人爽 | 在线亚洲成人 | 91人人澡人人爽人人精品 | 日韩欧美在线一区二区 | 久久一区二 | 丁香视频五月 | 国产在线观看,日本 | 国产91精品久久久久 | 国产系列 在线观看 | 久久在现| 欧美成人在线免费 | 91精品在线免费视频 | 免费看的黄色的网站 | 日韩1页 | 久草精品资源 | 亚洲视频一 | 日韩理论电影在线观看 | 亚洲国产精品500在线观看 | 99精品久久99久久久久 | 91在线观看视频网站 | av网站免费线看精品 | 亚洲有 在线 | 国产精品久久久久久一二三四五 | 97视频在线 | 国产男女无遮挡猛进猛出在线观看 | 欧美精品一区二区免费 | 亚洲成a人片在线www | 婷婷色综合色 | 欧美男女爱爱视频 | av永久网址 | 一级性生活片 | 国产高潮久久 | 国产精品高潮呻吟久久av无 | www.av免费 | 亚洲精品国产第一综合99久久 | 射久久久 | 国产一卡久久电影永久 | 在线看中文字幕 | 在线欧美小视频 | 九九热国产视频 | 六月丁香六月婷婷 | 天天干天天干天天色 | 国产黄色一级大片 | 日韩久久久久久久久久久久 | www国产亚洲精品 | 9在线观看免费高清完整版 玖玖爱免费视频 | 456免费视频| 毛片网免费| 亚洲aⅴ乱码精品成人区 | 久久久久欠精品国产毛片国产毛生 | 国产伦理久久精品久久久久_ | 亚洲欧美日本国产 | 九草在线观看 | 中文字幕在线看视频国产中文版 | 国产精品久久久视频 | 97在线免费视频观看 | 国产精品久免费的黄网站 | 五月婷婷中文网 | 久久激情视频网 | 在线综合 亚洲 欧美在线视频 | 亚洲精品三级 | 干综合网 | av不卡网站 | 日韩免费视频 | 免费色视频网址 | 色av男人的天堂免费在线 | 欧美久久久一区二区三区 | 五月天婷婷在线播放 | 国产精品美女久久久久久2018 | 亚洲草视频 | 开心激情五月网 | 四虎国产精品免费观看视频优播 | 国产精品久久精品 | 亚洲一区二区高潮无套美女 | 久久久久久国产精品999 | 国产一区二区不卡视频 | 99久久久国产精品免费99 | 免费观看不卡av | 中文字幕文字幕一区二区 | 亚洲最大在线视频 | 国产麻豆果冻传媒在线观看 | 久久久精品免费看 | 在线亚洲欧美视频 | 97超碰资源网 | 国产乱对白刺激视频不卡 | 成人av中文字幕在线观看 | 日日婷婷夜日日天干 | 在线观看成人小视频 | 亚洲第一区在线播放 | 亚洲精品视频第一页 | a电影在线观看 | 欧美久久久久 | 粉嫩av一区二区三区四区在线观看 | 久久久www免费电影网 | 狠狠狠狠狠狠操 | 夜添久久精品亚洲国产精品 | 国产 日韩 在线 亚洲 字幕 中文 | 国产精品一区二区62 | 国产麻豆视频网站 | 超碰免费97| 97手机电影网 | 韩国av免费观看 | 国产精品麻豆99久久久久久 | av网站免费在线 | 美女黄视频免费看 | 国产无遮挡又黄又爽馒头漫画 | 9在线观看免费 | 91精彩视频在线观看 | 超碰在线98 | 国产成人精品网站 | 国产精品婷婷 | 成人av中文字幕在线观看 | 91在线观看黄 | 国产97av | 成人在线一区二区三区 | 久久精品永久免费 | 欧美吞精| 久久视频精品在线 | 久草视频在线资源站 | 美女黄视频免费看 | 91福利区一区二区三区 | 国产高清视频在线播放一区 | 国产精品资源在线观看 | 人人爽人人爽人人片 | 婷婷成人亚洲综合国产xv88 | 精品国产电影一区二区 | 亚洲黄色影院 | 久久久久久久久久久久久9999 | 亚洲欧美日韩在线看 | 人人爱在线视频 | 久久欧美精品 | 欧美日性视频 | 91人人揉日日捏人人看 | 国产精品不卡在线播放 | 日韩乱码在线 | 97在线免费观看 | 亚洲视频专区在线 | 国产人成看黄久久久久久久久 | 午夜国产福利在线 | 一二三精品视频 | 欧美日韩亚洲在线 | 国产亚洲激情视频在线 | 色婷婷视频 | 国内精品久久久久久久久久久久 | 中文字幕一区二区三 | 韩国三级av在线 | 中国一级特黄毛片大片久久 | 久久久99精品免费观看app | 最新av网址在线 | 91在线视频观看免费 | 日本激情中文字幕 | 国产精彩视频一区二区 | 久久国产片 | 97免费公开视频 | 人人插人人舔 | 91精品国产自产在线观看永久 | 黄色最新网址 | 亚洲精品美女在线 | 1000部国产精品成人观看 | 黄色午夜网站 | 手机在线看片日韩 | 免费一级特黄录像 | 亚洲狠狠干 | 国内小视频在线观看 | 久久免费视频8 | 日韩精品免费在线播放 | 国产精品一区二区久久久久 | 日韩91av| 日韩免费在线观看视频 | 九九热免费视频在线观看 | 操操日日 | 成人a在线观看高清电影 | 国产欧美精品xxxx另类 | 日韩精品欧美专区 | 精品国产伦一区二区三区观看说明 | 青草视频免费观看 | 999ZYZ玖玖资源站永久 | 97综合网 | 欧美激情第一区 | www.五月婷婷.com | 成人三级网站在线观看 | 夜夜澡人模人人添人人看 | 玖玖爱国产在线 | 国产手机视频在线 | 久久久久久久久久久久亚洲 |