《電子技術應用》
您所在的位置:首頁 > 模擬設計 > 設計應用 > 嵌入式Linux中I2C設備驅動程序的研究與實現
嵌入式Linux中I2C設備驅動程序的研究與實現
摘要: I2C 作為一種目前通用的總線技術,已廣泛應用于EEPROM、實時鐘、小型LCD 等設備與CPU 的接口中。分析了嵌入式Linux 中I2C 驅動程序的體系結構,I2C 驅動程序中一些重要數據結構之間的關系以及I2C 驅動程序的運行機制。最后,結合具體的EEPROM 芯片AT24C08 說明了在嵌入式Linux 下開發I2C設備驅動程序的一般流程。另外還創新了一般的驅動方法,實現了單設備多驅動的驅動模式。
Abstract:
Key words :

  引言

  I2C是“Inter Integrated Circuit Bus”的縮寫,中文譯成“內部集成電路總線”, 它是Philips 公司于20 世紀80 年代研發成功的一種具有多端控制功能的雙線雙向串行數據總線標準, 其具有模塊化、電路結構簡單等優點。在嵌入式系統中,I2C總線已經成為器件接口的標準之一, 常用于連接RAM、EEPROM 以及LCD 控制器等設備。另外,總線的數據傳輸是以字節為單位的。

  目前,標準的I2C的傳輸速率可以達到100kbit/s,能支持128 個設備,增強型I2C傳輸速率可達400kbit/s,能支持多達1024 個設備,高速模式下的I2C 傳輸速率更高達3.4Mbit/s。

  1 Linux 驅動程序

  驅動程序是指系統內核與系統硬件之間的接口。Linux 中的每一個外圍物理設備等都有一個專門用于控制該設備的設備驅動程序" title="設備驅動程序" target="_blank">設備驅動程序。設備驅動可以完成初始化、釋放以及檢測硬件設備;差錯和故障處理;負責內核與硬件、應用程序與硬件之間的數據傳輸與通信的一些重要工作。在嵌入式系統中,設備驅動為嵌入式操作系統和應用程序訪問硬件設備提供統一的接口。通過它, 操作系統和應用程序就可以輕松地操作和驅動硬件架構的分層。

  2 Linux 的I2C 體系結構

  2.1 Linux 下I2C 體系結構分析

  Linux 的I2C 體系結構由3 大部分組成:

  (1)I2C框架:I2C.h 和I2C-core.c 為I2C框架的主體,提供了核心數據結構的定義、I2C 適配器驅動和設備驅動的注冊、注銷方法,I2C 通信方法(algorithm)上層的、與具體適配器無關的代碼、以及檢測設備地址的上層代碼等。作為核心的I2C-core.c 還為總線驅動設備提供了一些統一的調用接口進行讀寫和設置操作, 另外它還提供了將各種支持的總線設備驅動添加到這個體系中的方法, 以及當不再使用這些總線驅動時從體系中刪除的方法。

  (2)I2C 總線驅動I2C總線驅動是對I2C 硬件體系結構中適配器端的實現,I2C 總線驅動主要包含了I2C 適配器數據結構I2C_adapter, 以及描述在具體I2C 適配器上的總線通信方法i2c_algorithm 數據結構。

  (3)I2C 設備驅動:I2C 設備驅動是對I2C 硬件體系結構中設備端的實現, 設備一般掛接在受CPU 控制的I2C 適配器上, 通過I2C 適配器與CPU 交換數據。I2C 設備驅動主要包含了數據結構i2c_driver 和i2c_client。

  這三部分的關系如圖1 所示。

圖1Linux 中I2C 體系結構

  2.2 I2C驅動程序中的重要數據結構

  在I2C 框架的i2c.h 這個頭文件中對4 個關鍵的結構體進行了定義, 它們分別是i2c_adapter、i2c_algorithm、i2c_driver 和i2c_client。結構體i2c_adapter 是一個I2C控制器的邏輯抽象,并且作為最核心的數據結構提供了I2C適配器的驅動。i2c_algorithm對應一套通信方法, 其封裝了對一個I2C 控制器的讀寫操作, 并且提供的通信函數可以控制適配器上產生特定的訪問周期,這套通信方法由驅動開發者來完成。i2c_driver 則是對應于一套驅動方法,用于輔助作用的數據結構,不對應任何物理實體,僅是提供了I2C 設備i2c_client 的驅動。而i2c_client 對應于真實的物理設備,描述具體設備可能的私有數據結構。

  2.3I2C驅動程序中重要數據結構之間的關系

  對于上述的4 個結構體來說, 其中的i2c_driver 和i2c_client 是與具體I2C 設備相關的,而i2c_adapter 和i2c_algorithm則共同構成I2C 總線適配器驅動。一個algorithm 可以適用于多個I2C 總線上的不同adapters, 但具體的每個adapter 只能對應于一個algorithm。在i2c_adapter 數據結構中設計了clients指針數組, 用于記錄該總線上每個設備的i2c_client 數據結構。

  另外, 定義內核中全局靜態指針數組adapters 和drivers 分別記錄已注冊的I2C 適配器驅動和I2C 設備驅動程序。值得注意的是同一個i2c_adapter 中的不同的i2c_client 可能使用同一個i2c_driver,而分屬于不同i2c_adapter 中的兩個i2c_client 也可能使用同一個i2c_driver。

  3 一個具體的I2C 設備驅動程序的開發

  AT24C08 是由ATMEL 公司出品的一款EEPROM 存儲器。

  作為一個標準的I2C 設備AT24C08 有4 個塊存儲區, 一個塊有256 個數據存儲單元,整個AT24C08 具有1024 個存儲單元。由于每個數據存儲單元可存1 字節的數據,所以整塊AT24C08 的存儲能力為1KB。

  3.1 I2C 設備驅動程序的一般結構及運行流程圖

  開發一個具體的I2C 設備驅動需要一個完整、標準的結構,而該結構的實現是通過編寫兩個方面的接口而完成的, 一個是用以掛接I2C adapter 層來實現對I2C 總線及I2C設備具體的訪問方法, 即I2C 核心層的接口, 主要實現attach_adapter,detach_client,command 等接口函數。另一個是對用戶應用層的接口, 提供用戶程序訪問I2C設備的接口, 包括實現open,release,read,write 以及ioctl 等標準文件操作的接口函數。下面將通過對核心層接口和應用層接口的分析來說明I2C 設備驅動程序的運行機制。圖2 為I2C 設備驅動程序運行流程圖(圖中at 代表具體的設備AT24C08):

  3.2 I2C 設備驅動的I2C 核心層接口分析

  如圖2 的用戶空間在通過insmod 命令加載設備驅動程序時, 設備驅動將通過使用動態模塊的方式加載并指向設備初始化函數at_init(),在初始化函數中使用register_chrdev()進行字符型設備的注冊, 并可以通過靜態和動態兩種方法來申請注冊到系統中的設備號。另外將調用核心i2c -core.c 中提供的i2c_add_driver()函數注冊由at_driver 數據結構描述的驅動方法,該數據結構中完成了對驅動程序的標示, 并包含了兩個重要的成員函數at_attach_adapter()和at_detach_client()。

  在i2c_add_driver () 注冊at_driver 數據結構后,at_attach_adapter()函數就會被自動調用,其遍歷系統中的每個i2c 總線驅動, 探測想要訪問的設備, 連接符合i2c driver 特定條件的i2c adapter,并通過i2c adapter 實現對I2C 總線及其設備的訪問。

  而at_attach_adapter()的功能則是依靠調用i2c-core.c 核心中的i2c_probe()函數來實現的,通過i2c_probe()函數可以認領adapter所指向的適配器上的所有合適的設備。設備可能使用的地址由addr_data 數組指出。通過設備地址每次檢測到新設備后,i2c_probe()將使用它的第三個參數即回調函數初始化設備的數據結構i2c_client,并用i2c_check_functionality()確定I2C 適配器所支持的通信方法。另外再使用i2c_attach_client()知會I2C 核心系統中包含了一個新的I2C 設備。

  通過rmmod 命令對設備驅動進行卸載時, 在卸載函數at_exit()中將使用i2c_del_driver(),其調用會引起與數據結構at_driver 關聯的每個i2c_client 與之解除關聯, 隨后at_detach_client()函數也將因此而被調用,而at_detach_client()中的i2c_detach_client()又完成與i2c_attach_client()相反的過程,并使用kfree 釋放由client 所占的內存。另外卸載函數at_exit()中還將使用unregister_chrdev()對字符型設備進行注銷。

  3.3I2C設備驅動用戶應用層接口分析

  在注冊字符型設備時, 設備驅動中初始化了一個structfile_operations 文件操作結構體變量用于鏈接字符設備驅動程序和用戶應用程序,在該結構中定義了一組函數指針。系統就是通過這組函數指針對AT24C08 進行具體的操作,系統首先通過設備文件的主設備號找到相應的設備驅動程序, 然后讀取這個數據結構相應的函數指針,找到相關的功能函數,接著把控制權交給該函數,從而就在上層屏蔽了設備驅動的具體實現細節,提供給用戶一個方便快捷的接口。該結構中的at_open(),對應于用戶應用層的open()接口函數,其通過mknod 創建的設備節點對設備文件進行打開操作。而對應用戶層release () 接口函數的at_release () 則負責設備文件的釋放操作。file_operations 中的at_ioctl()則主要是為用戶提供一些控制該AT24C08 的命令。對一塊具體設備進行讀寫操作是編寫驅動要達到目的,file_operations結構體中所指向的讀寫函數at_read(),at_write()完成了對AT24C08 的寫入和讀出操作。

  就寫函數而言, 在寫數據之前必須先輸入測試單元的起始地址, 然后再對寫入的數據分配相應內存, 然后使用copy_from_user 命令把從用戶空間獲得的數據拷貝到內核空間,并構造I2C 消息數據,最終通過i2c-core.c 的i2c-transfer()函數進行I2C消息數組的傳輸,而i2c_transfer()將指向總線驅動中的算法i2c_algorithm 所對應的具體適配器的master_xfer()方法,這樣就借助i2c-core.c 作為紐帶連接了設備驅動和總線驅動,并完成了兩者之間的通信,其運行流程如圖2 的內核空間所示。

  對于讀函數at_read(),同樣要對數據進行內存的分配,構造I2C消息,傳輸I2C 消息以及轉換數據空間等。兩者的主要區別則體現在對I2C 消息的構造上,在讀出數據之前,先要寫地址,根據寫入的地址來尋找將要讀出的數據的起始地址, 所以在讀函數中就需要構造兩條I2C 消息,一條用于寫地址操作,另一條用于讀數據操作。另外在轉換數據空間時, 讀函數將使用copy_to_user 把內核空間的數據拷貝到用戶空間。

  3.4 AT24C08 的單設備多驅動的實現方式

  單設備多驅動是本文的一個創新點。設計中實現了分3 個設備驅動一對1 塊AT24C08 進行操作。設備驅動1 對AT24C08的第1 個塊操作,設備驅動2 對第2 個塊操作,設備驅動3 對第3 和第4 個塊進行操作。對塊的分開操作體現在對設備地址的探測上,由于保存設備地址信息的是二元數組addr_data,所以在多驅動對單一的AT24C08 操作時就需要在該二元數組中指明每個設備驅動程序所控制的設備地址。對于控制第1 個塊的設備驅動1,通過數組normal_addr 指出要進行操作的設備地址為0x50,如下所示:

  static unsigned short normal_addr[]={ 0x50,I2C_CLIENT_END};

  再通過其對數組addr_data 進行初始化, 這樣, 設備驅動1就能檢測到數組中所指出的AT24C08 的第1 個塊,而跳過其他的塊, 達到了只對單一特定塊操作的目的。對于設備驅動2 來說, 只需把數組normal_addr 中地址改為AT24C08 的第2 個塊的地址0x51 即可。同理,對設備驅動3,只需把normal_addr 中的單一地址改為兩個地址即可,如下所示:

  static unsigned short normal_addr [] = { 0x52,0x53, I2C_CLIENT_END};

  這樣就可使設備驅動只探測到后兩個塊,而跳過其他塊,以達到對單一AT24C08 中多個塊操作的目的。然后再用insmod命令加載編譯好的三個.ko 驅動模塊, 獲得3 個不同的設備號后,接著根據所獲得的設備號使用mknod 命令創建3 個不同的字符型設備節點, 最后通過用戶層的3 個測試程序分別打開已創建的這3 個不同的設備節點就能分別對不同的塊進行讀寫操作,至此就實現了單設備多驅動的控制方式。

  同樣除了分3 個驅動外, 驅動開發者也可以編寫4 個設備驅動分別對每1 個塊進行操作, 或者就只編寫1 個設備驅動對4 個塊一起操作,也適用于綁定非連續塊進行操作,比如用一個設備驅動控制第1 和第3 個塊。總之驅動開發人員可以根據不同的需要進行不同的組合方式。

  3.5 AT24C08 設備驅動程序的驗證與測試

  設備驅動程序的驗證, 需要通過用戶層的測試程序來實現,測試程序如下:

  fd=open("/dev/at", O_RDWR); //打開設備文件,獲得設備文件的文件描述符。

  scanf("%u", &start_address); //輸入測試單元起始地址。

  write(fd,buf,sizeof(buf)); //把以頁寫入方式把輸入的16 個數據寫入內核空間。

  4 結束語

  作為當前最流行的總線技術之一,I2C 總線具有結構小巧,使用簡單高效的特點,目前在各種設計中已得到廣泛的應用。本文分析了Linux 下I2C 的體系結構,較為詳盡的說明了I2C驅動程序中的一些重要數據結構以及這些數據結構之間的關系,并論述了I2C 驅動程序體系的運行機制, 最后以一個EEPROM 芯片AT24C08 為例,詳細的給出了一個具體設備驅動的基本開發過程, 并說明了設備驅動中的兩個重要接口,I2C 核心層接口和用戶應用層接口。更重要的是本文還提供了一種單設備多驅動的實現方式,這將帶給驅動開發人員一定的啟示。另外,本文還進行了設備驅動程序的測試與驗證工作, 保證了設備驅動程序編寫的正確性。本文的設備驅動設計方法也將對其他相關I2C設備驅動的設計提供良好的借鑒作用。

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 东京天堂热av | 国产av国片精品 | 亚洲日本中文字幕乱码在线电影 | jizz视频| 麻豆成人免费 | 特黄aaaaaaaaa毛片免费视频 | 日韩精品中文在线 | 色噜噜狠狠狠综合曰曰曰 | 97狠狠干| 国产精品久久久久9999高清 | 成人亚洲一区二区 | 亚洲欧美中文日韩在线 | 成人高清 | 欧美11—12娇小xxxx | 久久久亚洲一区二区三区 | 18禁美女裸身无遮挡免费网站 | 亚洲精品乱码久久久久久蜜桃不爽 | 2018天天拍拍天天爽视频 | 一二三国产777avav | 美女视频黄的免费 | 做a爰小视频| 亚洲人成色777777精品音频 | 宅男撸66国产精品 | 欧美 日本 国产 | 亚洲欧美婷婷六月色综合 | 精品欧洲av无码一区二区三区 | 宝宝好涨水快流出来免费视频 | 日韩黄色短视频 | 日本欧美色 | 仁科百华av解禁在线播放 | 男人天堂欧美 | 亚洲一区二区三区四区五区午夜 | 美女精品视频 | 国产一区二区在线视频观看 | 91精品综合久久久久m3u8 | 国产欧亚州美日韩综合区 | 黄色毛片大全 | 黄色片子免费 | 亚洲女人被黑人巨大进入 | 美女一区二区三区网av | 青草福利在线 | av无限看| 九九99靖品 | 1024国产精品 | 唐人社导航福利精品 | 亚洲精品不卡无码福利在线观看 | 天堂а√在线中文在线最新版 | 国产网红无码精品视频 | 午夜精品久久久久久久久久久久 | 国产午夜视频 | 97在线观看视频免费 | 午夜爱精品免费视频一区二区 | 日韩深夜在线 | 台湾佬中文娱乐22vvvv | 国产日韩欧美综合 | 成人高清免费观看mv | 国产麻豆md传媒视频 | 成人福利在线观看 | 免费操| 人妻少妇精品无码专区二区 | 国产精品人人妻人人爽人人牛 | 午夜影院在线免费观看 | blacked蜜桃精品一区 | 三级视频在线 | 男女午夜影院 | 女人与黑人做爰啪啪 | 色综合av综合无码综合网站 | 欧美最猛性xxxxx免费 | 免费日本黄色网址 | 大尺度av在线 | 亚洲欧洲日本无在线码 | 成人区人妻精品一熟女 | 国产乱老熟视频网站 视频 国产乱了实正在真 | 完全免费在线视频 | 国产精品久久久久久久久动漫 | 亚洲国产天堂久久综合226114 | 一级肉体全黄裸片高潮不断 | 牛鞭伸入女人下身的真视频 | 99国产精品欧美久久久久的广告 | 欧美一进一出抽搐大尺度视频 | 佐山爱在线视频| 国产剧情在线 | 欧美福利网 | 欧美性大战久久久久久久 | 1769国产精品 | 亚洲va欧美va国产综合先锋 | 亚洲国产精品肉丝袜久久 | 亚洲精品欧美日韩 | 欧美亚洲一区二区三区 | 91精品免费 | 91欧美精品午夜性色福利在线 | 一本大道在线一本久道视频 | 日躁夜躁狠狠躁2001 | 免费日韩中文字幕 | 日韩av片无码一区二区不卡电影 | 欧美xxxx黑人xyx性爽 | 国产美女免费观看 | 免费在线观看的黄色网址 | 亚洲黄色免费网站 | 成人午夜性影院 | 精品亚洲a∨无码一区二区三区 | 久久婷婷成人综合色综合 | 亚洲欧美日韩国产 | 欧美91视频 | 国产精品亚洲成在人线 | 成人毛片18女人毛片免费 | 中文字幕中文有码在线 | 西野翔之公侵犯中文字幕 | 婷婷综合久久狠狠色99h | 久久久亚洲精品石原莉奈 | 在线亚洲人成电影网站色www | 91传媒理伦片在线观看 | 国产成人在线播放视频 | 午夜桃色| 午夜dv内射一区区 | 色哟哟国产最新 | 熟妇无码乱子成人精品 | 伊人网视频在线观看 | 久久青草费线频观看 | 91在线播 | 精品视频在线一区二区 | 女人18毛片aaa片水真多 | 波多野结衣乳巨码无在线 | 久久精品无码一区二区三区 | 亚洲精品~无码抽插 | 久久频这里精品99香蕉 | 激情六月天 | 中文字幕一区二区三区久久 | 日韩影视一区二区三区 | 国产精品久久免费视频 | 一本一道久久a久久精品综合 | 丝袜老师办公室里做好紧好爽 | 亚洲精品国产精品99久久 | 中国女人真人一级毛片 | 日韩avxxx | 女人与拘做受全过程免费视频 | 男女艹逼网站 | 99reav| 337p日本欧洲亚洲大胆精蜜臀 | 国产精品香蕉在线的人 | 中文字幕日韩一区二区不卡 | 美女网站免费观看视频 | 精品日韩欧美一区二区在线播放 | 色香影视| 中文字幕第68页 | 久久se精品一区精品二区 | 亚洲精品三区 | 污污视频免费网站 | av在线网址大全 | 夜夜精品无码一区二区三区 | 精品欧美日韩 | 开心春色激情网 | 黑人大战中国av女叫惨了 | 日韩色图视频 | 日本免费视频在线观看 | 夜夜躁狠狠躁日日躁202小说 | 91av在线视频观看 | 午夜av大片 | 中文字幕一区二区三区四区五区 | 久久久综合视频 | 亚洲视频一区 | а√天堂8资源在线官网 | 大黄网站在线观看 | 国产系列精品av | 成人毛毛片 | 国产八十老太另类视频 | 欧洲无线码一二三四区 | 欧美xxxxx高潮喷水 | 中文字幕精品无码一区二区 | 国产精品va无码一区二区 | 亚洲一区二区无码偷拍 | 国产99视频精品免视看7 | 亚洲精品国产嫩草在线观看东京热 | 欧美综合专区 | 农村妇女毛片精品久久久 | 成人调教视频 | 国产一区二区三区在线观看视频 | 日本中文字幕有码在线视频 | 国产懂色av一区二区三区 | 成人精品区 | www.youjizz.com视频 | 国产伦人伦偷精品视频 | 成人手机在线视频 | 欧洲女人牲交性开放视频 | 久久成人高清 | 人人插人人 | 国产精品a久久 | 亚洲熟妇自偷自拍另类 | 少妇又色又紧又黄又刺激免费 | 丰满熟妇人妻av无码区 | 日本精品久久久久久 | 亚洲男人av | 成人羞羞国产免费软件小说 | 亚洲综合av一区二区三区 | 最近2019中文字幕大全第二页 | 中文人妻熟妇乱又伦精品 | 美女视频一区 | 久草精品视频 | 91青楼传媒秘入口 | 亚洲天码中字 | 欧美裸体xxxx极品少妇 | 亚洲鲁丝片一区二区三区 | 青青草免费视频在线播放 | 国产肥白大熟妇bbbb | 国产精品久久久久久久久人妻 | 亚洲蜜臀av | 久久高潮视频 | 久久夜色精品国产www红杏 | 精品久久久久久久久久久久 | 欧美精品动漫 | 天天插天天摸 | 麻豆久久久久久 | 亚洲国产日韩一区 | 日本中文字幕高清 | 成人福利视频在线观看 | 欧美精品亚洲一区 | 国产亚洲精品久久久久久久久久 | 亚洲一区二区蜜桃 | 成人亚洲精品久久久久 | 亚洲色图欧美另类 | 欧美jizzhd精品欧美丰满 | 综合激情亚洲 | 97精品国产97久久久久久免费 | 亚洲精品久久夜色撩人男男小说 | 亚洲黄色小说图片 | 免费在线看污 | 欧美一区二区三区视频在线观看 | 国产美女喷水视频 | www久久久久久久久久 | 日本免费福利视频 | 欧美成人福利视频 | 欧美日韩免费做爰大片人 | 久久精品水蜜桃av综合天堂 | 四虎在线视频 | 一本一道久久久a久久久精品91 | 国产精品二区三区 | 18禁肉肉无遮挡无码网站 | 男女性杂交内射女bbwxz | 日韩毛片无码永久免费看 | 欧美黄视频在线观看 | 久久棈精品久久久久久噜噜 | 精品无人国产偷自产在线 | 亚洲精品日韩欧美 | 川上优av一区二区线观看 | 免费看一区二区三区四区 | av解说在线 | 精品乱码一区 | 中国女人av | 精品国产一区二区三区粉芽 | 国产欧美精品国产国产专区 | 亚洲一区二区三区精品视频 | 51国偷自产一区二区三区 | 99精品国产一区二区 | sm调教美女警花少妇 | 亚洲国产精品丝袜国产自在线 | 欧美午夜精品久久久久久浪潮 | 久久综合精品国产一区二区三区无码 | 亚洲综合另类小说色区色噜噜 | www.啪啪| 国产精品国产三级国产av剧情 | 久久久久久99精品久久久 | 污污在线免费观看 | 性高潮久久久久久久久 | 69精品视频| 三a级做爰 | 亚洲最新 | 黄色大片免费网站 | 国产精品国产三级国产有见不卡 | 成人3d动漫一区二区三区 | 91成人综合 | 97视频在线播放 | 国产精品成人免费一区久久羞羞 | 国产玉足榨精视频在线观看 | 欧美一区二区三区性视频 | 欧美无极品 | 国产九九在线视频 | 插我一区二区在线观看 | 女仆高潮hd理论片 | 韩国精品一区二区三区 | 欧美日韩精品中文字幕 | 美女的尿囗网站免费 | 午夜欧美精品久久久久久久 | 亚洲精品一区二区三区婷婷月 | 国产欧美熟妇另类久久久 | 人妻熟女αⅴ一区二区三区 | 美女三级毛片 | 无码专区无码专区视频网址 | 五月天激情综合 | 无码熟妇人妻av在线影片 | 亚洲永久精品在线观看 | 美国伦理3野性 | 能看av的网站 | 久久综合九色欧美综合狠狠 | 大陆女明星乱淫合集 | 人人妻人人澡人人爽人人精品97 | 性啪啪chinese东北老女人 | 国产黑色丝袜呻吟在线91 | 美日韩三级 | 3bmm在线观看视频免费 | 波多野结衣在线视频免费观看 | 好大好湿好硬顶到了好爽视频 | 国产毛片毛片毛片毛片毛片毛片 | 中文字幕一区三级久久日本 | 中文字幕第9页 | 亚洲精品视频国产 | 女女同性女同一区二区三区九色 | 亚洲中文字幕日产无码 | 成人在线免费观看网站 | 黄色高清无遮挡 | 视频在线一区二区三区 | 国产小视频在线免费观看 | 欧美一级免费片 | 国产porn | 成人1啪啪 | 中文字幕av一区中文字幕天堂 | 亚洲xxxxx高清 | 中国美女囗交视频免费看 | 国产一伦一伦一伦 | 六月久久 | 91精品国产九九九久久久亚洲 | 亚洲成色在线综合网站 | 日本公妇乱淫xxxⅹ 日本公妇乱淫免费 | 国产精品视频久久久久久久 | 欧美激情一区二区在线 | 国产孕妇视频 | 国产精品久久久久久久午夜片 | 国产精品久久久久久久久久10秀 | 免费黄色av片 | 禁久久精品乱码 | 欧美成人精品一区二区男人小说 | 久久久久久中文字幕 | 国产女人久久精品视 | 性一交一伦一伦一视频 | 鲁鲁久久 | 亚洲高清在线免费观看 | 海角国产真实交换配乱 | 日本成人在线免费观看 | 国产女人高潮抽搐喷水免费视频 | mm视频在线观看 | 超碰在线免费观看97 | 懂色av蜜乳av一二三区 | 亚洲色视频 | 国产在线一 | 另类 综合 日韩 欧美 亚洲 | 国产妇女乱一性一交 | 日本少妇高潮喷水xxxxxxx | 国产伦人伦偷精品视频 | 久久99国产综合精品免费 | 国产黄色一区 | 国产午夜亚洲精品午夜鲁丝片 | 亚洲愉拍99热成人精品 | 亚洲色av性色在线观无码 | av 日韩 人妻 黑人 综合 无码 | 国产成年无码v片在线 | 日本在线观看中文字幕 | 丝袜足控一区二区三区 | 7k7k在线看片午夜 | 四虎黄色网 | 亚洲男男网站 | 日本aⅴ免费视频一区二区三区 | 欧美激情久 | 国产喷水福利在线视频 | 韩国国产在线 | 免费大片av手机看片高清 | 国产成人一区二区三区在线播放 | 步兵在线一区二区三区 | 青娱乐极品视觉盛宴av | 亚洲狼人av| 国产精品久久午夜夜伦鲁鲁 | www.男人天堂.com| gogo西西人体大尺度大胆伊人 | 中文在线中文a | 嫩草精品| 动漫美女爆羞羞动漫在线蜜桃 | 夜夜骑天天射 | 日韩欧美a级片 | 色综合久久88色综合天天提莫 | 玖玖精品国产 | 亚洲欧美日韩成人在线 | 日韩欧美在线一区 | 无码人妻丰满熟妇区bbbbxxxx | 一本大道东京热无码视频 | 日本免费人成视频在线观看 | 激情综合色综合久久综合 | 国产亚洲视频中文字幕97精品 | 国产视频99 | 老熟女一区二区免费 | 人妻夜夜爽天天爽三区麻豆av网站 | 在线黄色av网站 | 国产有码在线观看 | 暖暖成人免费视频 | 亚洲午夜久久久久久久久电影网 | 欧美色吊丝 | 日韩一区二区三区在线 | 成人性生交大片免费看 | 永久黄网站色视频免费观看w | 免费看黄网站在线 | 黑人一区| 中文字幕日韩高清 | 99福利 | 久久888| 性高潮久久久久久 | 97影院在线午夜 | 91原创视频在线观看 | 台湾成人毛片 | 日本三级在线 | 水野朝阳av一区二区三区 | 中文字幕日本一区 | 日女人免费视频 | 日韩av毛片| 成人欧美一区二区 | 日韩一级片一区二区三区 | xxx18hd国语对白 | 在线观看视频99 | 欧美一区二区三区成人 | 免费在线播放 | 午夜性福利视频 | 久久99精品国产麻豆蜜芽 | 国产精品二 | 欧美疯狂性受xxxxx喷水 | 亚洲成人久久精品 | av一本久道久久波多野结衣 | 三上悠亚久久爱一区 | 国产成人久久久77777 | 国产成人精品毛片 | 一区二区三区中文字幕 | 538精品视频在线播放 | 国产成人av片 | 亚洲中字幕日产av片在线 | 欧美丰满熟妇bbb久久久 | 一区视频在线免费观看 | 少妇又紧又深又湿又爽视频 | 久久国产精品久久久久久 | av在线亚洲欧洲日产一区二区 | 日韩特黄| 北京少妇宾馆露脸对白 | 国产片在线 | 99久久精品国产片果冻的功能特点 | 日本大尺度吃奶做爰视频 | 曰本无码人妻丰满熟妇5g影院 | 色偷偷一区二区无码视频 | 亚洲国产超清无码专区 | 少妇系列之白嫩人妻 | 中文字幕在线不卡一区二区 | 免费人成xvideos在线视频 | 亚洲日韩国产一区二区三区 | 天天干天天草 | 色姑娘综合网 | 亚洲精品一区二区三区麻豆 | 51成人精品网站 | 日本精品视频在线 | 一本色道a无线码一区v | 黄色三级毛片视频 | 国产成人无码av | 日本videos18高清hd下 | 国产又黄又嫩又滑又白 | 午夜免费视频 | 99久热re在线精品99 6热视频 | 搡老女人老妇女老熟妇 | 国91精品久久久久9999不卡 | 无码色av一二区在线播放 | 亚洲最大成人网色 | 夜间福利在线 | 欧洲熟妇色xxxx欧美老妇老头多毛 | 中国女人内谢69xxxx免费视频 | 激情高潮呻吟抽搐喷水 | 亚洲欧美18岁网站 | 91小宝寻花一区二区三区 | 四虎国产精品永久在线 | 国产私拍大尺度在线视频 | 丁香五月亚洲综合在线 | 亚洲国产精品久久久久秋霞不卡 | 99精品国产在热久久无码 | 亚洲色图27p | 亚洲一在线 | 日韩在线观看精品 | 青草一区二区 | 久久尤物免费一区二区三区 | 成人性做爰aaa片免费看曹查理 | 人妻夜夜添夜夜无码av | 快播av在线| 日韩一区二区在线播放 | 亚洲狠狠干 | 中文字幕第3页 | 欧美精品一区二区三区四区在线 | 久久久精品影院 | 一区二区黄色 | 日本伊人色综合网 | 国产精品va无码一区二区 | 国产精品无套内射迪丽热巴 | 欧美激情综合色综合啪啪五月 | chinese麻豆新拍video | 国产婷婷精品av在线 | av在线免费播放网址 | videosgratis极品另类灌满高清资源 | 欧美乱妇日本无乱码特黄大片 | 日韩精品免费一区二区三区 | 久久入 | 乱人伦精品视频在线观看 | 干美女视频 | 日韩美女免费视频 | 久久精品国产成人 | 四虎成人精品 | 国产精品99无码一区二区 | 啄木系列成人av在线播放 | 久久精品aⅴ无码中文字字幕 | 久久久久久97免费精品一级小说 | 与黑人做爰的日本人 | 亚洲性久久久 | 好紧好爽午夜视频 | 日韩精品一区二区在线观看 | 亚洲国产成人精品无码区99 | 国产精品亚洲一区二区三区天天看 | 麻豆videos| 日本不卡一区在线观看 | 成人精品在线视频 | 精区一品二品星空传媒 | 日韩另类av| 一级做a免费看 | 国产成熟人妻换╳╳╳╳ | 免费一级黄色 | 大又大粗又爽又黄少妇毛片 | 日本免费一区二区三区四区五六区 | 国产又爽又粗又猛的视频 | 亚洲日韩国产中文其他 | 婷婷丁香六月激情综合啪 | 日本啪啪网站永久免费 | 欧美最猛黑人xxxx黑人猛叫黄 | 国语对白新婚少妇在线观看 | 少妇边打电话边呻吟在线91 | 91麻豆成人精品国产免费网站 | 中文字幕一区二区三三 | 97在线观看免费视频 | 国产精品国产精品国产专区不片 | 少妇高潮惨叫久久久久电影69 | 视频这里只有精品 | 欧美午夜精品一区二区蜜桃 | 996久久国产精品线观看 | 无码精品国产va在线观看dvd | 久草免费看 | 最近中文字幕mv | 亚洲精品无码一区二区三区久久久 | 久久综合网av | 97超碰在 | 婷婷国产天堂久久综合五月 | 亚洲88| 日韩欧美的一区二区 | 精品国产一区二区在线观看 | 成人亚洲国产精品一区不卡 | 初尝黑人嗷嗷叫中文字幕 | 综合九九| 精品国产一区二区三区久久久狼 | 夜夜躁人人爽天天天天大学生 | 青青伊人久久 | 久久久久久毛片免费播放 | 亚洲色图吧 | 午夜阳光精品一区二区三区 | 少妇mm被擦出白浆液视频 | 北条麻妃二三区 | 亚洲精华国产 | 国产精品欧美成人 | 久久久久久美女精品啪啪 | 99涩涩| 少妇边打电话边呻吟在线91 | 国产无套精品一区二区 | 日本黄色动态图 | 日本55丰满熟妇厨房伦 | 亚洲欧美精品一中文字幕 | 国产精品极品白嫩 | 国产日产久久欧美清爽 | 色妞ww精品视频7777nga | 无码人妻久久久一区二区三区 | 亚洲乱码无码永久不卡在线 | 少妇献身老头系列 | 乱亲女h秽乱长久久久 | 日韩久久久久 | 少妇又紧又深又湿又爽视频 | 欧美不卡一区二区三区 | 欧美另类高清zo欧美 | 中文字幕日韩视频 | 一本色道久久综合亚洲精品不 | 69久久夜色精品国产69蝌蚪网 | 亚洲区和欧洲区一二三四 | 老牛嫩草二区三区观影体验 | 国产乱码一区二区三区在线观看 | 国产精品卡一卡二卡三 | 亚州国产 | 国产成a人亚洲精品无码樱花 | 国产女主播视频一区二区 | 日韩一区二区三区在线播放 | 人妻丰满熟妇av无码区免 | 蓝牛av| 少妇被粗大的猛烈进出 | 北岛玲一区二区三区四区 | 无遮挡国产 | 在线看欧美 | 国产成人综合网 | 五月婷婷六月丁香综合 | 乱妇乱女熟妇熟女网站 | 欧美一二区 | snis839痴汉明日花キララ | 一区二区中文字幕在线观看 | 一区在线播放 | 国产又粗又硬又大爽黄老大爷 | 国产一区内射最近更新 | 奇米精品视频一区二区三区 | 欧美一级专区 | 国产吃瓜在线 | 操干视频 | 橘梨纱连续高潮在线观看 | 国产免费一级视频 | 精品久久在线观看 | 国模张文静啪啪私拍150p | 国产寡妇色xxⅹ交肉视频 | 肉色超薄丝袜脚交91 |