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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

pci驱动框架

發布時間:2023/12/18 编程问答 60 豆豆
生活随笔 收集整理的這篇文章主要介紹了 pci驱动框架 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
PCI 總線架構主要被分成三部分:
1.PCI ?設備。符合 PCI 總線標準的設備就被稱為 PCI 設備,PCI ?總線架構中可以包含多個 PCI 設備。圖中的 Audio 、LAN 都是一個 PCI 設備。PCI ?設備同時也分為主設備和目標設備兩種,主設備是一次訪問操作的發起者,而目標設備則是被訪問者。
2.PCI ?總線。PCI ?總線在系統中可以有多條,類似于樹狀結構進行擴展,每條 PCI 總線都可以連接多個 PCI ?設備/ 橋。上圖中有兩條 PCI 總線。
3.PCI ?橋。當一條 PCI 總線的承載量不夠時,可以用新的 PCI 總線進行擴展,而 PCI 橋則是連接 PCI 總線之間的紐帶。圖中的 PCI 橋有兩個,一個橋用來連接處理器、內存以及 PCI 總線,而另外一條則用來連接另一條 PCI 總線。


PCI設備與驅動?
1. PCI相關結構體

Linux ?提供了三類數據結構用以描述 PCI 控制器、PCI ?設備以及 PCI 總線。

PCI ?控制器:

<span style="font-size:18px;">struct pci_controller {struct pci_controller *next; //該屬性指向下一個 PCI 控制器struct pci_bus *bus; // 該屬性標志了當前 PCI 控制器所連接的 PCI 總線struct pci_ops *pci_ops; //該屬性標志了當前 PCI 控制器所對應的 PCI 配制空間讀寫操作函數struct resource *mem_resource; //該屬性標志了當前 PCI 控制器所支持的 Memory 地址區間unsigned long mem_offset; //地址偏移量struct resource *io_resource; //該屬性標志了當前 PCI 控制器所支持的 IO 地址空間。unsigned long io_offset; //偏移量unsigned long io_map_base; //PCI 設備的 IO map 基地址unsigned int index; //該屬性標志 PCI 控制器的編號。/* For compatibility with current (as of July 2003) pciutilsand XFree86. Eventually will be removed. */unsigned int need_domain_info; //域信息int iommu; //MMU/* Optional access methods for reading/writing the bus numberof the PCI controller */int (*get_busno)(void);void (*set_busno)(int busno); }; </span>
PCI ?總線:

<span style="font-size:18px;">struct pci_bus {struct list_head node; /* node in list of buses */struct pci_bus *parent; /* parent bus this bridge is on */struct list_head children; //總線連接的所有 PCI 子總線鏈表。struct list_head devices; //總線連接的所有 PCI 設備鏈表struct pci_dev *self; //該屬性標志了連接的上行 PCI 橋struct list_head slots; /* list of slots on this bus */struct resource *resource[PCI_BUS_NUM_RESOURCES];//該屬性標志了 Memory/IO 地址空間。struct pci_ops *ops; //該屬性標志了總線上所有 PCI 設備的配制空間讀寫操作函數。void *sysdata; //指向系統特定的擴展數據 struct proc_dir_entry *procdir; /* directory entry in /proc/bus/pci */unsigned char number; /* bus number */unsigned char primary; /* number of primary bridge */unsigned char secondary; /* number of secondary bridge */unsigned char subordinate; /* max number of subordinate buses */char name[48];unsigned short bridge_ctl; /* manage NO_ISA/FBB/et al behaviors */pci_bus_flags_t bus_flags; /* Inherited by child busses */struct device *bridge;struct device dev;struct bin_attribute *legacy_io; /* legacy I/O for this bus */struct bin_attribute *legacy_mem; /* legacy mem */unsigned int is_added:1; }; </span>
PCI ?設備:

每種類的PCI設備都可以用結構類型pci_dev來描述。更為準確地說,應該是每一個PCI功能,即PCI邏輯設備都唯一地對應有一個pci_dev設備描述符。該數據結構的定義部分屬性如下(include/linux/pci.h):

<span style="font-size:18px;">struct pci_dev {struct list_head bus_list; /* node in per-bus list */struct pci_bus *bus; /* bus this device is on */struct pci_bus *subordinate; /* bus this device bridges to */void *sysdata; /* hook for sys-specific extension */struct proc_dir_entry *procent; /* device entry in /proc/bus/pci */struct pci_slot *slot; /* Physical slot this device is in */unsigned int devfn; //標志了設備編號和功能編號。unsigned short vendor; //屬性標志了供應商編號unsigned short device; //標志 設備編號unsigned short subsystem_vendor; //這是一個16無符號整數,表示PCI設備的子系統廠商IDunsigned short subsystem_device;struct pci_driver *driver; //指向這個PCI設備所對應的驅動程序定義的pci_driver結構u8 revision; /* PCI revision, low byte of class word */u8 hdr_type; /* PCI header type (`multi' flag masked out) */u8 pcie_type; /* PCI-E device/port type */u8 rom_base_reg; /* which config register controls the ROM */u8 pin; /* which interrupt pin this device uses */ } </span>
總線設備鏈表元素bus_list:每一個pci_dev結構除了鏈接到全局設備鏈表中外,還會通過這個成員連接到其所屬PCI總線的設備鏈表中。每一條PCI總線都維護一條它自己的設備鏈表視圖,以便描述所有連接在該PCI總線上的設備,其表頭由PCI總線的pci_bus結構中的 devices成員所描述。
hdr_type:8位符號整數,表示PCI配置空間頭部的類型。其中,bit[7]=1表示這是一個多功能設備,bit[7]=0表示這是一個單功能設備。Bit[6:0]則表示PCI配置空間頭部的布局類型,值00h表示這是一個一般PCI設備的配置空間頭部,值01h表示這是一個PCI-to-PCI橋的配置空間頭部,值02h表示CardBus橋的配置空間頭部
rom_base_reg:8位無符號整數,表示PCI配置空間中的ROM基地址寄存器在PCI配置空間中的位置。ROM基地址寄存器在不同類型的PCI配置空間頭部的位置是不一樣的,對于type 0的配置空間布局,ROM基地址寄存器的起始位置是30h,而對于PCI-to-PCI橋所用的type 1配置空間布局,ROM基地址寄存器的起始位置是38h

2.PCI設備與驅動關系
PCI設備通常由一組參數唯一地標識,它們被vendorID,deviceID和class nodes所標識,即設備廠商,型號等,這些參數保存在 pci_device_id結構中。每個PCI設備都會被分配一個pci_dev變量,內核就用這個數據結構來表示一個PCI設備。?
所有的PCI驅動程序都必須定義一個pci_driver結構變量,在該變量中包含了這個PCI驅動程序所提供的不同功能的函數,同時,在這個結構中也包含了一個device_driver結構,這個結構定義了PCI子系統與PCI設備之間的接口。在注冊PCI驅動程序時,這個結構將被初始化,同時這個 pci_driver變量會被鏈接到pci_bus_type中的驅動鏈上去。?
在pci_driver中有一個成員struct pci_device_id *id_table,它列出了這個設備驅動程序所能夠處理的所有PCI設備的ID值。

3.PCI設備與驅動的綁定過程
? ? ? ? 下面描述一下對于PCI設備與驅動綁定的過程。首先在系統啟動的時候,PCI總線會去掃描連接到這個總線上的設備,同時為每一個設備建立一個pci_dev結構,在這個結構中有一個device成員,并將這些pci_dev結構鏈接到PCI總線描述符上的devices鏈。如下圖所示:

???????????????????????????????

??????? 第二步是當PCI驅動被加載時,pci_driver結構體將被初始化,這一過程在函數pci_register_driver中:
? ? ? ? drv->driver.bus = &pci_bus_type;
? ? ? ? drv->driver.probe = pci_device_probe;
? ? ? ? 最后會調用driver_register(&drv->driver)將這個PCI驅動掛載到總線描述符的驅動鏈上。同時在注冊的過程中,會根據pci_driver中的id_table中的ID值去查看該驅動支持哪些設備,將這些設備掛載到pci_driver中的devices鏈中來。如下圖所示:

????? ? ? ?? ???????

????????????????

?????????????? 對于不同的設備,可能驅動程序也不一樣,因此,對于上圖中的Dev3,可能就需要另外一個驅動程序來對其進行驅動。所以當加載了Dev3的驅動程序時,其示意圖如下圖所示:

????????????????????????


PCI設備驅動程序

????? 1.基本框架

????????在用模塊方式實現PCI設備驅動程序時,通常至少要實現以下幾個部分:初始化設備模塊、設備打開模塊、數據讀寫和控制模塊、中斷處理模塊、設備釋放模塊、設備卸載模塊。下面給出一個典型的PCI設備驅動程序的基本框架,從中不難體會到這幾個關鍵模塊是如何組織起來的。


上面這段代碼給出了一個典型的PCI設備驅動程序的框架,是一種相對固定的模式。需要注意的是,同加載和卸載模塊相關的函數或數據結構都要在前面加上__init、__exit等標志符,以使同普通函數區分開來。構造出這樣一個框架之后,接下去的工作就是如何完成框架內的各個功能模塊了。

/* 指明該驅動程序適用于哪一些PCI設備 */ static struct pci_device_id xxx_pci_tbl [] __initdata = {{PCI_VENDOR_ID_DEMO, PCI_DEVICE_ID_DEMO,PCI_ANY_ID, PCI_ANY_ID, 0, 0, DEMO},{0,} }; /* 對特定PCI設備進行描述的數據結構 */ struct xxx_card {unsigned int magic;/* 使用鏈表保存所有同類的PCI設備 */struct xxx_card *next;/* ... */ } /* 中斷處理模塊 */ static void xxx_interrupt(int irq, void *dev_id, struct pt_regs *regs) {/* ... */ } /* 設備文件操作接口 */ static struct file_operations demo_fops = {owner: THIS_MODULE, /* demo_fops所屬的設備模塊 */read: xxx_read, /* 讀設備操作*/write: xxx_write, /* 寫設備操作*/ioctl: xxx_ioctl, /* 控制設備操作*/mmap: xxx_mmap, /* 內存重映射操作*/open: xxx_open, /* 打開設備操作*/release: xxx_release /* 釋放設備操作*//* ... */ }; /* 設備模塊信息 */ static struct pci_driver demo_pci_driver = {name: xxx_MODULE_NAME, /* 設備模塊名稱 */id_table: xxx_pci_tbl, /* 能夠驅動的設備列表 */probe: xxx_probe, /* 查找并初始化設備 */remove: xxx_remove /* 卸載設備模塊 *//* ... */ }; static int __init xxx_init_module (void) {/* ... */ } static void __exit xxx_cleanup_module (void) {pci_unregister_driver(&xxx_pci_driver); } /* 加載驅動程序模塊入口 */ module_init(xxx_init_module); /* 卸載驅動程序模塊入口 */ module_exit(xxx_cleanup_module);
2.初始化
在Linux系統下,想要完成對一個PCI設備的初始化,需要完成以下工作:
檢查PCI總線是否被Linux內核支持;
檢查設備是否插在總線插槽上,如果在的話則保存它所占用的插槽的位置等信息。
讀出配置頭中的信息提供給驅動程序使用。
當Linux內核啟動并完成對所有PCI設備進行掃描、登錄和分配資源等初始化操作的同時,會建立起系統中所有PCI設備的拓撲結構,此后當PCI驅動程序需要對設備進行初始化時,一般都會調用如下的代碼:

static int __init xxx_init_module (void) {/* 檢查系統是否支持PCI總線 */if (!pci_present())return -ENODEV;/* 注冊硬件驅動程序 */if (!pci_register_driver(&demo_pci_driver)) {pci_unregister_driver(&demo_pci_driver);return -ENODEV;}/* ... */return 0; }
驅動程序首先調用函數pci_present( )檢查PCI總線是否已經被Linux內核支持,如果系統支持PCI總線結構,這個函數的返回值為0,如果驅動程序在調用這個函數時得到了一個非0的返回值,那么驅動程序就必須得中止自己的任務了。在2.4以前的內核中,需要手工調用pci_find_device( )函數來查找PCI設備,但在2.4以后更好的辦法是調用pci_register_driver( )函數來注冊PCI設備的驅動程序,此時需要提供一個pci_driver結構,在該結構中給出的probe探測例程將負責完成對硬件的檢測工作。

static int __init xxx_probe(struct pci_dev *pci_dev, const struct pci_device_id *pci_id) {struct xxx_card *card;/* 啟動PCI設備 */if (pci_enable_device(pci_dev))return -EIO;/* 設備DMA標識 */if (pci_set_dma_mask(pci_dev, DEMO_DMA_MASK)) {return -ENODEV;}/* 在內核空間中動態申請內存 */if ((card = kmalloc(sizeof(struct demo_card), GFP_KERNEL)) == NULL) {printk(KERN_ERR "pci_demo: out of memory\n");return -ENOMEM;}memset(card, 0, sizeof(*card));/* 讀取PCI配置信息 */card->iobase = pci_resource_start (pci_dev, 1);card->pci_dev = pci_dev;card->pci_id = pci_id->device;card->irq = pci_dev->irq;card->next = devs;card->magic = DEMO_CARD_MAGIC;/* 設置成總線主DMA模式 */ pci_set_master(pci_dev);/* 申請I/O資源 */request_region(card->iobase, 64, card_names[pci_id->driver_data]);return 0; }
3.OPEN

在這個模塊里主要實現申請中斷、檢查讀寫模式以及申請對設備的控制權等。在申請控制權的時候,非阻塞方式遇忙返回,否則進程主動接受調度,進入睡眠狀態,等待其它進程釋放對設備的控制權。

static int xxx_open(struct inode *inode, struct file *file) {/* 申請中斷,注冊中斷處理程序 */request_irq(card->irq, &xxx_interrupt, SA_SHIRQ,card_names[pci_id->driver_data], card)) {/* 檢查讀寫模式 */if(file->f_mode & FMODE_READ) {/* ... */}if(file->f_mode & FMODE_WRITE) {/* ... */}/* 申請對設備的控制權 */down(&card->open_sem);while(card->open_mode & file->f_mode) {if (file->f_flags & O_NONBLOCK) {/* NONBLOCK模式,返回-EBUSY */up(&card->open_sem);return -EBUSY;} else {/* 等待調度,獲得控制權 */card->open_mode |= f_mode & (FMODE_READ | FMODE_WRITE);up(&card->open_sem);/* 設備打開計數增1 */MOD_INC_USE_COUNT;/* ... */}} }
4.數據的讀寫和控制

PCI設備驅動程序可以通過demo_fops 結構中的函數demo_ioctl( ),向應用程序提供對硬件進行控制的接口。例如,通過它可以從I/O寄存器里讀取一個數據,并傳送到用戶空間里:

static int xxx_ioctl(struct inode *inode, struct file *file,unsigned int cmd, unsigned long arg) {/* ... */switch(cmd) {case DEMO_RDATA:/* 從I/O端口讀取4字節的數據 */val = inl(card->iobae + 0x10);/* 將讀取的數據傳輸到用戶空間 */return 0;}/* ... */ }
事實上,在demo_fops里還可以實現諸如demo_read( )、demo_mmap( )等操作,Linux內核源碼中的driver目錄里提供了許多設備驅動程序的源代碼,找那里可以找到類似的例子。在對資源的訪問方式上,除了有I/O指令以外,還有對外設I/O內存的訪問。對這些內存的操作一方面可以通過把I/O內存重新映射后作為普通內存進行操作,另一方面也可以通過總線主DMA(Bus Master DMA)的方式讓設備把數據通過DMA傳送到系統內存中。

5.中斷處理

PC的中斷資源比較有限,只有0~15的中斷號,因此大部分外部設備都是以共享的形式申請中斷號的。當中斷發生的時候,中斷處理程序首先負責對中斷進行識別,然后再做進一步的處理。

static void xxx_interrupt(int irq, void *dev_id, struct pt_regs *regs) {struct xxx_card *card = (struct xxx_card *)dev_id;u32 status;spin_lock(&card->lock);/* 識別中斷 */status = inl(card->iobase + GLOB_STA);if(!(status & INT_MASK)) {spin_unlock(&card->lock);return; /* not for us */}/* 告訴設備已經收到中斷 */outl(status & INT_MASK, card->iobase + GLOB_STA);spin_unlock(&card->lock);/* 其它進一步的處理,如更新DMA緩沖區指針等 */ }
6.釋放和卸載

釋放設備模塊主要負責釋放對設備的控制權,釋放占用的內存和中斷等,所做的事情正好與打開設備模塊相反:

static int xxx_release(struct inode *inode, struct file *file) {/* ... *//* 釋放對設備的控制權 */card->open_mode &= (FMODE_READ | FMODE_WRITE);/* 喚醒其它等待獲取控制權的進程 */wake_up(&card->open_wait);up(&card->open_sem);/* 釋放中斷 */free_irq(card->irq, card);/* 設備打開計數增1 */MOD_DEC_USE_COUNT;/* ... */ }
卸載設備模塊與初始化設備模塊是相對應的,實現起來相對比較簡單,主要是調用函數pci_unregister_driver( )從Linux內核中注銷設備驅動程序:

static void __exit xxx_cleanup_module (void) {pci_unregister_driver(&xxx_pci_driver); }


總結

以上是生活随笔為你收集整理的pci驱动框架的全部內容,希望文章能夠幫你解決所遇到的問題。

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

久久久免费看视频 | 99这里只有久久精品视频 | 久久久久中文字幕 | 黄色资源网站 | 丁香六月天婷婷 | 亚洲九九影院 | 伊人视频 | 国产综合精品久久 | 天躁狠狠躁 | 亚洲激情网站免费观看 | 久久久www成人免费精品张筱雨 | 伊人久久国产精品 | 婷婷六月综合网 | 五月综合色婷婷 | 亚洲天堂网视频在线观看 | 麻豆精品视频在线观看免费 | 超级碰碰免费视频 | 日韩精品一区电影 | 欧美日韩在线观看一区二区三区 | 国产午夜精品在线 | 国产成人黄色av | 在线精品视频免费播放 | 精品国产三级a∨在线欧美 免费一级片在线观看 | 亚州精品在线视频 | 久久国产网站 | 天天草天天操 | 精品在线99 | 日韩欧美视频一区二区 | 免费福利在线 | 亚洲va在线va天堂 | 日韩精品首页 | 黄色app网站在线观看 | 天天射网站 | 午夜久久久久久久 | 日韩成人邪恶影片 | 在线亚洲欧美视频 | 国产在线精品二区 | 免费观看国产视频 | 久久99九九99精品 | av黄色在线观看 | 国产高清免费av | 欧美精品亚洲二区 | 四虎最新域名 | 激情视频在线观看网址 | 色综合天天色 | 欧美另类v| 精品视频999 | 久久99精品视频 | 激情欧美一区二区免费视频 | 亚洲 在线 | 91最新在线| 日本三级人妇 | 男女啪啪免费网站 | 日本中出在线观看 | 久久视频这里只有精品 | 夜夜天天干 | 97人人澡人人爽人人模亚洲 | 午夜美女福利直播 | 五月婷婷久 | 久久免费精彩视频 | 一区二区三区四区五区在线视频 | 国产老太婆免费交性大片 | 在线免费黄色 | 国产香蕉视频在线播放 | 日本特黄特色aaa大片免费 | 国产精品一区二区 91 | 久久久麻豆 | 天天操天天射天天爽 | 日韩欧美视频免费看 | 国产色婷婷精品综合在线手机播放 | 国产综合小视频 | 综合网中文字幕 | 精品久久久久久久久久久久久久久久 | 色偷偷中文字幕 | 成人国产精品电影 | 精品久久久国产 | 天天干夜夜擦 | 国产精品网在线观看 | 久久久久久久久爱 | 免费看一级特黄a大片 | 久久社区视频 | 麻豆传媒在线免费看 | 2023年中文无字幕文字 | 欧美日产一区 | 国产一区私人高清影院 | 免费激情在线电影 | 婷婷射五月| 久草在线视频看看 | 香蕉影院在线播放 | 91久久久久久久一区二区 | 97日日| 亚洲精选国产 | 国产裸体视频bbbbb | 91传媒免费在线观看 | 精品超碰 | 亚洲国产日韩av | 日韩av黄 | 国产精彩视频一区 | 亚洲国产影院av久久久久 | 国精产品999国精产品视频 | 欧美成人黄 | 在线免费色 | 西西444www大胆高清视频 | 亚洲午夜精品电影 | 日韩成人高清在线 | 国产日韩在线一区 | 国产美女精彩久久 | 色噜噜在线观看视频 | 久久69精品久久久久久久电影好 | 亚洲激情五月 | 99999精品| 精品欧美一区二区三区久久久 | 久久不见久久见免费影院 | 婷婷精品国产一区二区三区日韩 | 婷婷六月丁 | 99久久er热在这里只有精品15 | a爱爱视频 | 久久婷婷五月综合色丁香 | 中文av在线免费观看 | 婷婷在线网站 | 97日日碰人人模人人澡分享吧 | 中文字幕一区二区三区久久 | 亚洲视频久久久 | 国产中文字幕大全 | 91成人破解版 | 婷婷色五 | 国产亚洲精品久久网站 | 色爱区综合激月婷婷 | 亚洲天堂精品视频 | 久热色超碰 | 久久精品官网 | 探花视频在线观看免费 | 国产 一区二区三区 在线 | 豆豆色资源网xfplay | 国产精品国产精品 | 成年人免费看片网站 | 亚洲电影黄色 | 国产黄色片免费观看 | 国产伦理久久精品久久久久_ | 91av电影在线| 亚洲精品在线观看网站 | 亚洲视频在线播放 | 欧美日韩激情视频8区 | 日韩在线观看一区二区 | 久久av免费观看 | 亚洲日本欧美在线 | 国产一级三级 | 亚洲国产wwwccc36天堂 | 99久热在线精品视频观看 | 国产系列 在线观看 | 亚洲国产成人久久综合 | 免费在线观看黄色网 | 少妇视频一区 | 日韩伦理一区二区三区av在线 | 久久久久女教师免费一区 | 成人免费 在线播放 | 午夜精品电影一区二区在线 | 韩国av在线| 在线观看网站你懂的 | 久久天天操 | av不卡中文字幕 | 草免费视频 | 国产乱老熟视频网88av | 日韩欧美一区二区在线 | 日批视频 | 久久高清av | 91在线中文字幕 | 国产a网站 | 黄色小说在线免费观看 | 激情五月婷婷 | 成人黄性视频 | 精品一区av | 午夜久久久久久久 | 伊人中文网 | 在线免费看黄色 | 国产一二三精品 | 91亚洲综合 | 婷婷色伊人 | 美女免费视频网站 | 亚洲天堂自拍视频 | 亚洲v精品 | 91精品视频免费 | 日本久久综合网 | 日韩在线视频国产 | 欧美激情精品久久久久 | 日韩伦理片hd | 五月婷婷在线综合 | 久久免费视频5 | 97超碰资源网 | 婷婷国产一区二区三区 | 亚洲欧洲一区二区在线观看 | 99精品福利 | 免费观看的av | 99在线观看视频 | 久久撸在线视频 | 91爱爱中文字幕 | 99视频一区| 亚洲理论在线观看 | 97在线视频网站 | 99久热在线精品视频观看 | 美女久久久久久久久久 | 婷婷社区五月天 | 久草在线官网 | 久久9视频| 成人在线一区二区 | 奇米四色影狠狠爱7777 | 亚洲理论在线 | 成人午夜精品久久久久久久3d | 国产精品日韩在线观看 | 欧美日韩大片在线观看 | 国产精品久久久久久久午夜 | 中文字幕一区二区三区四区视频 | 国产小视频在线免费观看视频 | 久久一区二区三区国产精品 | 亚洲成人网在线 | 97热久久免费频精品99 | 麻豆传媒在线视频 | 久久亚洲综合国产精品99麻豆的功能介绍 | 欧美性色综合网 | 久久久蜜桃 | 久久国内精品视频 | 激情 一区二区 | 黄色三级免费观看 | 丁香九月激情 | 啪啪午夜免费 | 国产96精品| 亚洲精品视频在线免费播放 | 免费中午字幕无吗 | 久久久婷| 亚洲精选久久 | 国产精彩在线视频 | 欧美日韩1区 | 免费观看黄色av | 亚洲精品色婷婷 | 在线成人免费 | 国产精品18久久久久久久久 | 中文字幕在线观看资源 | 九九久久国产精品 | 天天做日日爱夜夜爽 | 亚洲成人在线免费 | 成 人 黄 色 免费播放 | 国产 日韩 中文字幕 | 国产精品毛片网 | 中文区中文字幕免费看 | 在线小视频国产 | 亚洲精品免费在线播放 | 国产只有精品 | 在线亚洲激情 | 欧美极品一区二区三区 | 国产精品视频地址 | 日韩系列在线观看 | 久久亚洲国产精品 | 五月婷婷综合在线观看 | 在线观看一区二区视频 | 久久第四色 | 日韩欧美在线不卡 | 91久久国产露脸精品国产闺蜜 | 国模精品在线 | 国产精品第一视频 | 国产精品一区二区视频 | 91福利试看 | 黄色影院在线观看 | 日韩美在线观看 | 欧美一区二区精美视频 | 国产精品毛片完整版 | 六月丁香激情综合 | 在线国产精品视频 | 亚洲精品乱码白浆高清久久久久久 | 少妇性bbb搡bbb爽爽爽欧美 | 国产亚洲午夜高清国产拍精品 | 久久99免费观看 | 91探花视频 | 黄色网址国产 | 在线观看视频在线观看 | 欧美日韩伦理一区 | 久久精品一区二区三区中文字幕 | 91x色| 国产福利免费在线观看 | 日本中文字幕视频 | 久久婷婷国产 | 欧美黄色免费 | 6080yy精品一区二区三区 | 911国产在线观看 | 综合激情伊人 | 在线免费中文字幕 | 九九热视频在线播放 | 亚洲高清视频在线 | 欧美日韩视频在线 | 91超级碰碰 | 亚洲精品在线视频网站 | 97电影手机版 | 久久99国产视频 | 欧美极品xxxxx | 免费一级片久久 | 射久久| 久久专区 | 日韩视频欧美视频 | 狠狠干天天射 | 在线播放你懂 | 天天av天天 | 亚洲黄色成人网 | 日韩免费电影 | www.久久成人| 午夜精品一区二区三区免费 | 黄色一级大片在线免费看国产一 | 在线中文字幕视频 | 国产偷在线 | 四虎在线免费观看 | 色五丁香 | 久久人人看 | 91高清免费在线观看 | 国产区高清在线 | 99久久www | 久久经典国产视频 | 国产精品青草综合久久久久99 | 久久福利综合 | 久久公开视频 | 激情综合网在线观看 | 亚洲成人黄色在线观看 | 国产99久久久精品视频 | 国产精品黄 | 亚洲激情在线 | 日日夜夜骑 | 国产一区二三区好的 | 国产精品9999 | 国产亚洲精品久久久久久久久久久久 | 亚洲天天在线日亚洲洲精 | av黄色免费网站 | 亚洲日本va中文字幕 | 日韩电影中文 | 久久伊人五月天 | 午夜影院先| 午夜视频在线观看一区二区三区 | 国产精品视屏 | 国产一区私人高清影院 | 亚州精品天堂中文字幕 | 日韩大片在线 | 久久99国产精品久久99 | 日日爽夜夜操 | 免费在线成人 | 国产一级精品视频 | 久久久福利视频 | 日韩在线免费小视频 | 午夜免费在线观看 | 超碰av在线播放 | 久久五月婷婷综合 | 精品乱码一区二区三四区 | 91在线视频网址 | 91精品国产欧美一区二区 | 亚洲aⅴ一区二区三区 | 日韩在线观看一区二区三区 | 久久艹在线 | 成人免费观看网站 | 国产精品毛片一区二区在线看 | 97人人艹 | 一区二区三区日韩在线 | 伊色综合久久之综合久久 | 国产精品岛国久久久久久久久红粉 | 首页国产精品 | 日韩大片在线看 | 日韩在线观 | 亚洲一本视频 | 亚洲激情综合 | 中文字幕2021 | zzijzzij亚洲成熟少妇 | 久久福利综合 | 久久久综合精品 | 91精品久久久久久久久 | 婷婷在线免费视频 | 精品在线你懂的 | 日本在线观看一区二区三区 | 久久视 | 亚洲一区精品人人爽人人躁 | 亚洲伦理一区二区 | 日日干日日 | 天天射天天干天天操 | 国产精品夜夜夜一区二区三区尤 | 在线中文字幕网站 | 国产h在线观看 | 美女黄色网在线播放 | bbbbb女女女女女bbbbb国产 | 91精品久久久久久久久久入口 | 黄色大片免费播放 | 久久久久久片 | 天天操天天操天天操 | 精品国产三级a∨在线欧美 免费一级片在线观看 | 一级一片免费观看 | 深夜免费福利网站 | 亚洲精品小视频在线观看 | 西西444www | 国产在线观看二区 | 91一区啪爱嗯打偷拍欧美 | 国内精品中文字幕 | 久久久资源网 | 五月开心激情 | 日韩专区中文字幕 | 国产精品一区二区av | 99热这里只有精品久久 | 成人va天堂 | 亚洲精品国偷拍自产在线观看蜜桃 | 色视频网站在线观看一=区 a视频免费在线观看 | 首页国产精品 | 中文字幕在线观看你懂的 | 久久九九久久九九 | 麻豆传媒在线免费看 | 99久久精品免费看 | 成人在线视频免费观看 | 中文字幕免费观看全部电影 | 亚洲黄色精品 | 色狠狠操| 成人激情开心网 | 在线观看视频免费播放 | 国色天香第二季 | 午夜av不卡 | 成人av片免费观看app下载 | 欧美激情精品久久久久久免费印度 | 狠狠操影视| 成人在线播放网站 | 久久久久女人精品毛片九一 | 99色在线 | 国产一区精品在线观看 | 日韩精品中字 | 亚洲理论视频 | 中文字幕一区在线 | 欧美日韩亚洲在线 | 一区 在线 影院 | 999男人的天堂 | 国产精选视频 | 99综合久久 | av 一区 二区 久久 | 日韩一区二区三区高清在线观看 | av观看免费在线 | 成人免费看黄 | 激情五月六月婷婷 | 91福利专区 | 欧美专区国产专区 | 国产欧美中文字幕 | 久久久www成人免费精品 | 91av视频免费在线观看 | 国产精品露脸在线 | 一级成人免费视频 | 中文字幕免费观看 | 五月天天av| 狠狠操操操 | 精品久久久亚洲 | 久久久久久美女 | 五月婷婷亚洲 | 免费精品国产va自在自线 | 日韩视频1 | 亚洲欧美国产精品va在线观看 | 超碰人人乐 | 亚洲天堂网视频在线观看 | 久久婷婷精品视频 | 97超碰色 | 在线观看精品视频 | ww视频在线观看 | 亚洲激情在线视频 | 在线看国产日韩 | 国产99久久精品一区二区永久免费 | 麻豆成人在线观看 | av高清免费在线 | 国产高清视频免费在线观看 | 欧美成人免费在线 | 国产精品片 | 亚洲乱码在线观看 | 一区二区三区四区影院 | 很黄很污的视频网站 | 99精品视频在线播放免费 | 国产尤物一区二区三区 | 亚洲一片黄 | 免费视频久久久久久久 | 激情欧美一区二区免费视频 | 五月婷婷婷婷婷 | 国产免费观看久久黄 | 伊人六月| 欧美日韩后 | 精品黄色在线 | 国产美女主播精品一区二区三区 | 在线观看的av | 天天干天天操天天搞 | 久久色在线观看 | 西西人体www444 | 中文字幕国产一区 | 最近2019好看的中文字幕免费 | 国际av在线| 国产成人精品区 | av成人在线观看 | 色国产视频 | 免费男女羞羞的视频网站中文字幕 | 久久免费激情视频 | 国产一区黄色 | 亚洲一区二区黄色 | 久久高清片 | 日日夜夜精品网站 | 国产视频精选在线 | 久久五月精品 | 欧美日韩高清国产 | 韩国精品在线观看 | 精品国产99国产精品 | 91视频麻豆 | 国产精品九九视频 | 久久精品男人的天堂 | 国产精品久久久久久av | 91中文字幕在线 | 日本久久久影视 | 久久久香蕉视频 | 中文字幕日韩高清 | 男女男视频 | 天天干天天天 | 日日日日日 | 6080yy精品一区二区三区 | 中文字幕人成乱码在线观看 | 日韩动漫免费观看高清完整版在线观看 | 免费人成网 | 日本女人b | 国产精品久久久久久久久久久久午夜片 | 99国内精品久久久久久久 | 超碰在线中文字幕 | 久久久官网 | 黄色亚洲大片免费在线观看 | 69精品| 国产一级淫片在线观看 | 久久区二区 | 国产 欧美 在线 | 8x成人在线 | 国产视频中文字幕 | 久草在线视频中文 | 成人久久影院 | 又黄又刺激又爽的视频 | 国产麻豆视频免费观看 | 黄色大片入口 | 国产精美视频 | 天天色播| 911香蕉视频| 亚洲九九九在线观看 | 婷婷国产在线观看 | 97超碰人人模人人人爽人人爱 | 国产精品中文字幕在线播放 | 午夜精品久久一牛影视 | 久草国产精品 | 久久精品香蕉视频 | 欧洲色吧| 国产日韩精品在线观看 | 国产在线美女 | 久久人人爽av | 波多野结衣网址 | 91天堂影院 | 久久99久久99精品免观看软件 | 久久久亚洲网站 | 成人九九视频 | 欧美日韩二区在线 | 99视频久久 | 国产精品美女www爽爽爽视频 | 亚洲视频综合在线 | 射射色| 久久久精品国产一区二区三区 | 午夜精品导航 | 亚洲h色精品 | 国产成人久久av免费高清密臂 | 成人动漫精品一区二区 | 亚洲国产电影在线观看 | 中文字幕在线国产 | 麻豆视频在线免费看 | 久久天天躁狠狠躁亚洲综合公司 | 黄网av在线| 欧美视频日韩 | 久久一区二区免费视频 | 日韩精品视频在线观看网址 | 日韩在线不卡视频 | 国产精品国内免费一区二区三区 | 激情综合婷婷 | 国产一区二区在线影院 | 婷婷六月久久 | 国产一区电影在线观看 | 四虎精品成人免费网站 | 国产人成看黄久久久久久久久 | 91精品久 | 一区二区三区久久精品 | 久热av| 久久久久久电影 | 精品亚洲视频在线观看 | 日日操天天操狠狠操 | h动漫中文字幕 | 亚洲永久国产精品 | 黄色软件视频大全免费下载 | 2022中文字幕在线观看 | 91精品国产99久久久久 | 色中色亚洲 | 久久手机看片 | 国产成人在线观看免费 | 色香蕉视频 | 黄色免费网站下载 | 国产一区二区久久精品 | 97超碰成人 | 国产精品白虎 | 97精品超碰一区二区三区 | 天天爱天天干天天爽 | 午夜12点 | 91在线视频网址 | 91福利视频免费观看 | 欧美一级高清片 | 美女久久久久久久久久 | 亚洲少妇激情 | 国产成人精品在线 | 99久久日韩精品视频免费在线观看 | 婷婷五天天在线视频 | 国产精品麻豆99久久久久久 | 天天操天天干天天 | 九草在线视频 | 国产一级一片免费播放放 | 色黄久久久久久 | 99热官网 | 亚洲国产99| 超碰国产97 | 国产99久久久精品 | 奇米影视8888在线观看大全免费 | 欧美日韩精品影院 | 色www免费视频 | 91手机视频在线 | 亚洲男男gⅴgay双龙 | 欧美日韩国产在线 | 三级黄色在线观看 | 97在线影视| 最近中文字幕在线中文高清版 | 日韩黄色一区 | 国产最新视频在线观看 | 免费在线观看国产黄 | 久久精品久久精品久久39 | 九九九热精品 | 能在线观看的日韩av | 成年人在线免费看视频 | 久久国产精品一二三区 | 69国产成人综合久久精品欧美 | 五月天久久久 | 久久久免费播放 | 九九热精品在线 | 国产夫妻av在线 | 999久久国产| 亚洲婷婷在线视频 | 狠狠躁18三区二区一区ai明星 | 91看片在线播放 | 高清av免费看 | 一区二区三区 亚洲 | 精品久久久久久国产 | 精品一区二区亚洲 | 国产小视频在线播放 | 国产高清中文字幕 | 国产乱对白刺激视频在线观看女王 | 爱射综合| 国产午夜精品av一区二区 | 一区二区中文字幕在线观看 | 日韩欧美69 | 91成人网页版 | 亚洲成人xxx | 99久久爱 | 久久精品99国产精品 | 久久国产精品系列 | 国产精品 亚洲精品 | 在线视频精品播放 | 成人一级免费电影 | 国产无套一区二区三区久久 | 色99之美女主播在线视频 | 日本精品xxxx | 国产成人精品亚洲日本在线观看 | 手机在线永久免费观看av片 | 很黄很污的视频网站 | 免费开视频 | 操天天操 | 国产精品视频最多的网站 | 久久成| 欧亚日韩精品一区二区在线 | 免费福利片2019潦草影视午夜 | 超碰精品在线观看 | 久久免费黄色网址 | 激情www| 97人人模人人爽人人喊中文字 | 久久玖 | 久久天天躁夜夜躁狠狠躁2022 | 久久久av免费 | 亚洲成人午夜在线 | 国产福利一区二区三区在线观看 | 成人久久久精品国产乱码一区二区 | 免费观看一区二区三区视频 | 久久久香蕉视频 | 天天插综合网 | 久久久久久国产精品亚洲78 | 一二三区av | 天天操网址 | 视频在线精品 | 国产美女主播精品一区二区三区 | 福利在线看片 | 亚洲婷婷丁香 | 网站在线观看日韩 | 一区二区三区在线免费观看视频 | 亚洲激情网站免费观看 | 超级碰视频 | www黄免费 | 在线观看精品视频 | 91亚洲国产成人久久精品网站 | 日韩精品视频免费在线观看 | 国产流白浆高潮在线观看 | 香蕉视频亚洲 | 视频在线观看91 | 久久er99热精品一区二区 | 日本精品一区二区三区在线观看 | 成年人免费在线观看网站 | 波多野结衣视频网址 | 亚洲日本va午夜在线影院 | www免费视频com━ | 激情网婷婷 | a级国产乱理论片在线观看 伊人宗合网 | 国产精品v a免费视频 | 精品久久久久久亚洲 | 久久99精品久久久久久久久久久久 | 在线亚洲成人 | 日韩免费观看视频 | 亚洲免费av一区二区 | 国产精品午夜免费福利视频 | 欧美综合在线观看 | 香蕉视频4aa | 激情在线网址 | 日韩在线高清 | 在线91网| 黄色aaa毛片 | 婷婷在线播放 | 99视频在线观看视频 | 欧美成人h版 | 久久久久国产一区二区 | 免费久久久久久久 | 最新av在线网站 | 国产视频999 | 69国产精品成人在线播放 | 国产999视频 | 日韩在线观看影院 | 93久久精品日日躁夜夜躁欧美 | 天天操天天操天天爽 | 黄色av网站在线观看免费 | 国产高h视频 | 成人少妇影院yyyy | а中文在线天堂 | 精品人人人人 | 成人一级视频在线观看 | 日韩成年视频 | 在线观看黄a | 天天激情 | 国产手机视频在线观看 | 中文在线免费视频 | 97国产小视频 | 国产成人久久精品 | www国产亚洲精品久久网站 | 国产福利91精品 | 色婷婷六月天 | 99久久久国产精品免费99 | 九九九视频精品 | 91精品国产高清自在线观看 | 国产 一区二区三区 在线 | 91网址在线看 | 亚洲色综合 | 91大神dom调教在线观看 | 久久综合免费视频影院 | 欧美日韩国产一区二区三区 | 日韩高清毛片 | 日韩电影一区二区在线观看 | 国产手机视频在线观看 | 黄色a在线| 日韩在线不卡视频 | 91精品久 | 久久爱导航 | 91视频国产免费 | 亚洲精品中文在线 | 亚洲 欧美 国产 va在线影院 | 免费久久99精品国产婷婷六月 | 欧美日韩激情视频8区 | 五月婷婷丁香综合 | 中文字幕高清 | 91看成人 | 黄色片视频在线观看 | 96av麻豆蜜桃一区二区 | 国产国语在线 | 国产不卡毛片 | 亚洲成人在线免费 | 国产精品一区二区在线播放 | 久久久久免费 | 久久精品视频在线观看 | 精品国产伦一区二区三区观看方式 | 久日视频| 免费中文字幕 | 色无五月 | 久久亚洲人 | www.夜夜| 69精品视频在线观看 | 成人免费网站视频 | 一区二区国产精品 | 3d黄动漫免费看 | 亚洲黄色在线免费观看 | 天天插综合网 | 国产原创中文在线 | 狠狠色狠狠色综合系列 | 在线观看国产一区二区 | 国产一区二区在线免费播放 | 99国产在线观看 | 国产精品免费观看网站 | 成人黄色电影在线观看 | 久久视频在线免费观看 | 亚洲激情视频在线观看 | 99国产精品久久久久老师 | 精品一区二区久久久久久久网站 | 西西人体4444www高清视频 | 麻豆久久久久 | 国产精品久久人 | 日韩高清av | 久久99精品视频 | 婷婷视频在线播放 | 国产精品日韩在线观看 | 欧美日韩在线观看一区 | 夜夜操夜夜干 | 亚洲免费激情 | 深爱激情五月网 | 开心激情久久 | 九九免费观看全部免费视频 | 欧美日韩国产在线精品 | 国产 日韩 在线 亚洲 字幕 中文 | 手机看片国产日韩 | 国产精品福利在线播放 | 在线看成人片 | 亚洲免费公开视频 | 日韩中文字幕第一页 | 国产伦理一区二区三区 | 国产色在线,com | 欧美精品中文字幕亚洲专区 | 麻豆视频免费看 | 久久激情片 | 草久在线观看视频 | 国产三级视频 | 91视频xxxx| 久草精品免费 | 97超级碰碰碰碰久久久久 | 中国一级片视频 | 天天综合网 天天综合色 | 精品国产一区二区三区久久久 | 激情视频免费在线观看 | 97av视频在线| 国产精品嫩草影院99网站 | 亚洲自拍偷拍色图 | 1区2区3区在线观看 三级动图 | 999热视频 | 国产中文字幕久久 | 337p日本欧洲亚洲大胆裸体艺术 | 国产精品一区二区三区免费视频 | 88av网站| 日韩欧美中文 | 91热视频在线观看 | 亚洲精品久久久蜜臀下载官网 | 日本精品视频在线 | 黄色99视频 | 成人免费毛片aaaaaa片 | 欧美一区二区免费在线观看 | 超碰在线官网 | 在线免费观看国产视频 | 久久三级毛片 | 亚洲 欧美 精品 | 亚洲在线综合 | 国产精品久久久久久爽爽爽 | 在线a视频免费观看 | 国产在线观看免费观看 | 91精品成人| 久久午夜羞羞影院 | 日韩在线视频二区 | 日韩中文字幕在线观看 | 亚洲精品中文字幕在线 | 99激情网 | 欧美色图一区 | 美女免费视频观看网站 | 亚洲国产色一区 | 日韩久久电影 | 欧美一级片免费在线观看 | avwww在线观看 | 亚洲国产经典视频 | 亚洲理论在线观看电影 | 免费高清影视 | 青春草国产视频 | 在线观看成人毛片 | 精品视频免费 | 91超级碰碰 | 超碰在线资源 | 国产区第一页 | av中文字幕在线电影 | 久久精品视频日本 | 六月激情 | 国产高清视频在线 | 天天草综合 | 久久午夜国产精品 | 国产精品视频在线观看 | 九九九免费视频 | 欧美日韩高清在线一区 | 久久综合九色综合97_ 久久久 | 又黄又刺激的视频 | 欧美视频在线观看免费网址 | 亚洲三级性片 | 人人狠狠综合久久亚洲婷 | 操操色| 8x成人免费视频 | 国产99免费| 亚洲人在线视频 | 日韩久久激情 | 欧美a级成人淫片免费看 | 亚洲乱码中文字幕综合 | 久久婷婷一区二区三区 | 欧美视频不卡 | 国产麻豆精品久久一二三 | 天天干天天上 | 亚洲视频在线播放 | 中文字幕一区2区3区 | 国产在线播放一区二区三区 | 久久久久五月天 | 毛片永久免费 | 99久久精品免费看 | 久久人人爽人人爽人人片av免费 | 天天草视频| 色婷在线 | 亚洲人久久 | 在线观看av片| 91亚洲精品乱码久久久久久蜜桃 | 最近中文字幕久久 | 日韩高清免费电影 | 精品国产自 | av看片网址 | 中文字幕乱码电影 | 一本色道久久精品 | 国产一区91 | 国产视频精品免费 | 日韩视频精品在线 | 97成人啪啪网 | 国产永久免费高清在线观看视频 | 精品视频久久 | 日韩理论电影在线观看 | 成人蜜桃网 | 日韩视频中文字幕在线观看 | 国产特黄色片 | 国产999视频在线观看 | 日韩精品一区二 | 成人黄色在线看 | 亚洲午夜精 | 精品国产中文字幕 | 久久久99精品免费观看 | 天天操天天操天天操天天操 | 免费观看国产精品视频 | 四川bbb搡bbb爽爽视频 | 日韩美精品视频 | 久久99亚洲网美利坚合众国 | 99视频精品全部免费 在线 | 操操操人人 | 精品一区精品二区 | 久久久免费看 | 日韩91在线| 亚洲欧美综合 | 99色99| 亚洲午夜精品久久久久久久久 | 国产成人免费观看 | 久久国产精品一国产精品 | 免费观看一区二区 | 18久久久久| 在线中文字幕播放 | www,黄视频| 激情黄色av | 日日爽天天爽 | 91精品一区二区在线观看 | www91在线 | 成人四虎| 日韩色综合网 | 一区二区视频在线免费观看 | 探花视频在线观看免费版 | 国产三级香港三韩国三级 | 国产精品一级视频 | 91视频麻豆视频 | 欧美日韩在线观看一区二区三区 | 国产精品一区二区视频 | 亚洲作爱视频 | 日韩网站视频 | 黄色小视频在线观看免费 | 国内精品久久久久 | 最新色站 | 粉嫩av一区二区三区四区在线观看 | 在线视频黄 | 探花视频在线观看+在线播放 | 日韩成人在线免费观看 | 久久久久久久久久久久久国产精品 | 精品国产123 | 四虎国产视频 | 欧美成人免费在线 | 最新av在线免费观看 | 欧美一区视频 | 国语黄色片 | 国产精品久久嫩一区二区免费 | 成人黄色视 | 日韩精品最新在线观看 | 亚洲不卡在线 | 国内小视频在线观看 |