《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > 基于FIMC接口的CMOS攝像頭驅(qū)動分析與設(shè)計(jì)
基于FIMC接口的CMOS攝像頭驅(qū)動分析與設(shè)計(jì)
2015年微型機(jī)與應(yīng)用第9期
鄧思斌,凌 強(qiáng),徐 駿,李佳桐,李 峰,單廷佳
(中國科學(xué)技術(shù)大學(xué) 信息科學(xué)技術(shù)學(xué)院 自動化系,安徽 合肥 230027)
摘要: 目前的嵌入式系統(tǒng)中,USB攝像頭使用比較普遍,但其應(yīng)用會受到傳輸速度的限制。本文采用一款高速CMOS攝像頭,其驅(qū)動利用S3C6410內(nèi)置的FIMC接口技術(shù),采用DMA和ping-pong緩沖池機(jī)制,結(jié)合內(nèi)存共享策略,有效提高了傳輸速率并充分利用了有限的內(nèi)存資源。深入分析了該驅(qū)動的原理和實(shí)現(xiàn)細(xì)節(jié),并提出了改進(jìn)設(shè)計(jì),最終應(yīng)用在嵌入式圖像采集系統(tǒng)中,能夠?yàn)閼?yīng)用程序提供高清、高速圖像。
關(guān)鍵詞: FIMC接口 OV9650 內(nèi)存共享 DMA
Abstract:
Key words :

  摘  要: 目前的嵌入式系統(tǒng)中,USB攝像頭使用比較普遍,但其應(yīng)用會受到傳輸速度的限制。本文采用一款高速CMOS攝像頭,其驅(qū)動利用S3C6410內(nèi)置的FIMC接口技術(shù),采用DMA和ping-pong緩沖池機(jī)制,結(jié)合內(nèi)存共享策略,有效提高了傳輸速率并充分利用了有限的內(nèi)存資源。深入分析了該驅(qū)動的原理和實(shí)現(xiàn)細(xì)節(jié),并提出了改進(jìn)設(shè)計(jì),最終應(yīng)用在嵌入式圖像采集系統(tǒng)中,能夠?yàn)閼?yīng)用程序提供高清、高速圖像。

  關(guān)鍵詞: FIMC接口;OV9650;;內(nèi)存共享;DMA

0 引言

  嵌入式系統(tǒng)具有體積小、功耗低和成本低等天然性的優(yōu)勢,因而得到廣泛應(yīng)用,甚至在許多場合得以取代傳統(tǒng)工控機(jī),比如視頻監(jiān)控系統(tǒng)和安防系統(tǒng)。目前嵌入式系統(tǒng)中最常用、嵌入式Linux內(nèi)核支持最廣泛的是USB攝像頭。然而受到嵌入式處理器性能的限制,USB攝像頭接口的傳輸速率限制為12 Mb/s,對于常用的640×480分辨率的YUV圖像,其最高幀率為3.75幀/s,無法滿足實(shí)時性要求。因此,基于CMOS圖像傳感器的高速攝像頭正在被推廣應(yīng)用。CMOS高速攝像頭可以為嵌入式系統(tǒng)實(shí)時地提供高分辨率圖像[1],很適合進(jìn)行識別、跟蹤等實(shí)時圖像處理作業(yè)。采集640×480的VGA圖像,CMOS攝像頭最高幀率可以達(dá)到30幀/s。基于OV系列的CMOS攝像頭應(yīng)用很多,比如監(jiān)控[2]和人數(shù)檢測[3]都使用了OmniVision公司的OV9650攝像頭。參考文獻(xiàn)[4]介紹了基于S3C6410和OV9650的V4L2圖像采集系統(tǒng)的設(shè)計(jì),參考文獻(xiàn)[5]和[6]介紹了基于S3C2440中相機(jī)接口(Camera Interface,CAMIF)的OV9650攝像頭驅(qū)動設(shè)計(jì)。

  本文涉及的S3C6410[7]的完全交互式移動相機(jī)(Fully Integrated Mobile Camera,F(xiàn)IMC)接口是由S3C2440的CAMIF發(fā)展而來,但是目前關(guān)于FIMC驅(qū)動的原理分析和設(shè)計(jì)實(shí)現(xiàn)的文獻(xiàn)仍然很少。本文對OV9650及FIMC接口驅(qū)動的原理和實(shí)現(xiàn)細(xì)節(jié)作了深入分析,并對原有驅(qū)動進(jìn)行了改進(jìn),使之適用于視線檢測系統(tǒng)。

  本文首先分析攝像頭驅(qū)動所依賴的硬件接口,然后重點(diǎn)分析其驅(qū)動軟件設(shè)計(jì)原理和實(shí)現(xiàn)細(xì)節(jié),并給出改進(jìn)設(shè)計(jì),最后對下一步的改進(jìn)工作提出展望。

1 攝像頭驅(qū)動系統(tǒng)的硬件接口

  本文所涉及的驅(qū)動系統(tǒng)基于OK6410嵌入式開發(fā)板,采用S3C6410作為中央處理器。S3C6410內(nèi)置的FIMC接口為開發(fā)板與CMOS攝像頭的連接提供了可靠便利的接口。該驅(qū)動系統(tǒng)的硬件結(jié)構(gòu)如圖1所示。

001.jpg

002.jpg

  如圖1,攝像頭為130萬像素、20引腳的OV9650,通過FIMC接口接入S3C6410。OV9650與FIMC對應(yīng)管腳連接如圖2所示。其中,CAMYDATA7~CAMYDATA0負(fù)責(zé)圖像數(shù)據(jù)傳輸,CAMRSTN為復(fù)位信號,CAMSYNC為同步信號。OV9650的配置接口為SCCB接口。由于S3C6410沒有專用的SCCB接口,因此使用GPB6、GPB5分別模擬SIO_D、SIO_C,即數(shù)據(jù)和時鐘信號。SCCB協(xié)議與I2C協(xié)議的區(qū)別僅在于設(shè)備地址不同,因此,驅(qū)動中直接用I2C代替。

2 攝像頭驅(qū)動系統(tǒng)軟件

  2.1 Linux驅(qū)動模型

  在Linux操作系統(tǒng)中,設(shè)備驅(qū)動為應(yīng)用程序提供訪問接口,屏蔽了底層硬件細(xì)節(jié)。從Linux2.6內(nèi)核開始,設(shè)備被驅(qū)動和內(nèi)核映射為文件,應(yīng)用程序可以像訪問普通文件一樣訪問這些掛載在/dev目錄下的設(shè)備,訪問接口被定義在驅(qū)動中file_operations結(jié)構(gòu)體對象內(nèi)。每一個接口函數(shù)其實(shí)都是一個系統(tǒng)調(diào)用,其具體實(shí)現(xiàn)由驅(qū)動程序完成。Linux內(nèi)核中驅(qū)動模型包括總線(Bus)、設(shè)備(Device)和驅(qū)動(Driver)三個要素,即設(shè)備和驅(qū)動作為對象掛載在相同的總線上,由總線對設(shè)備和驅(qū)動進(jìn)行一一匹配。

  Linux驅(qū)動模型將所有外設(shè)分為字符設(shè)備、塊設(shè)備和網(wǎng)絡(luò)設(shè)備三種。攝像頭屬于字符設(shè)備,其驅(qū)動遵循著字符設(shè)備驅(qū)動的框架,包括設(shè)備號、設(shè)備注冊和最重要的文件操作函數(shù)的實(shí)現(xiàn)。特別地,針對攝像頭設(shè)備,V4L2[8]接口為驅(qū)動程序提供了一套完備的文件操作標(biāo)準(zhǔn)接口和緩沖池管理策略,目前大多數(shù)的攝像頭驅(qū)動都遵循V4L2接口標(biāo)準(zhǔn)。

  2.2 V4L2驅(qū)動

  V4L2是Video For Linux 2的簡稱,是Linux內(nèi)核中關(guān)于視頻設(shè)備的虛擬驅(qū)動,它不涉及硬件,僅僅為應(yīng)用程序提供一套完備的操作接口,這些接口的具體實(shí)現(xiàn)都由遵守V4L2協(xié)議的驅(qū)動程序來完成,比如常用的ioctl接口。V4L2的存在極大地方便了應(yīng)用程序的編寫,使得同一套應(yīng)用程序可以應(yīng)用于多種攝像頭。V4L2層次示意圖如圖3。

003.jpg

  基于V4L2的基本圖像采集流程如下:

  (1)打開視頻設(shè)備文件(一般為dev/video0),初始化采集格式等參數(shù);

  (2)在內(nèi)核空間申請若干視頻采集的幀緩沖區(qū);

  (3)地址映射,使得用戶空間的應(yīng)用程序?qū)彌_區(qū)有讀寫權(quán)限;

  (4)幀緩沖區(qū)在視頻采集輸入隊(duì)列排隊(duì),并啟動視頻采集;

  (5)從緩沖隊(duì)列取出幀緩沖區(qū),獲得數(shù)據(jù)進(jìn)行處理;

  (6)處理完,將幀緩沖區(qū)重新放入視頻采集輸入隊(duì)列,循環(huán)往復(fù)采集連續(xù)視頻數(shù)據(jù)。

004.jpg

  V4L2為圖像采集程序維持一個環(huán)形緩沖隊(duì)列,如圖4。該緩沖區(qū)隊(duì)列為ping-pong操作模式,應(yīng)用程序需要使用的圖像數(shù)據(jù)會通過ioctl接口使對應(yīng)的緩沖區(qū)出隊(duì),緩沖隊(duì)列的其余緩沖區(qū)繼續(xù)接收圖像數(shù)據(jù),并在一個循環(huán)之后覆蓋掉原有的緩沖區(qū)數(shù)據(jù),以保證緩沖區(qū)隊(duì)列中圖像數(shù)據(jù)的實(shí)時性。

  2.3 關(guān)鍵模塊驅(qū)動的設(shè)計(jì)與實(shí)現(xiàn)

  OV9650通過FIMC接口與S3C6410連接,F(xiàn)IMC為輸入圖像進(jìn)行格式轉(zhuǎn)換、剪裁等預(yù)處理,最后傳輸?shù)絻?nèi)核中開辟的圖像緩沖區(qū),供應(yīng)用程序讀取。攝像頭驅(qū)動分為兩個部分:OV9650驅(qū)動和FIMC驅(qū)動。

  2.3.1 OV9650驅(qū)動

  OV9650驅(qū)動的主要作用是掛載驅(qū)動和配置寄存器,其中.h文件定義了寄存器配置數(shù)據(jù),并由.c文件調(diào)用。由于FIMC接口的存在,應(yīng)用程序不需要直接操作OV9650攝像頭,因此OV9650驅(qū)動不需要為應(yīng)用程序提供訪問接口,不需要定義file_operations結(jié)構(gòu)體。

  從Mach-smdk6410.c文件中可以知道,內(nèi)核在啟動時,將OV9650作為一個I2C設(shè)備掛載到內(nèi)核樹的I2C總線上。之后內(nèi)核找到OV9650驅(qū)動,執(zhí)行其入口函數(shù)——ov965x_init(),將OV9650.c文件中定義的i2c_driver驅(qū)動對象也添加到內(nèi)核樹中,最后由總線根據(jù)其name將設(shè)備和驅(qū)動進(jìn)行匹配。在匹配工作完成之后,內(nèi)核會調(diào)用其探測函數(shù)ov965x_probe(),將OV9650的配置數(shù)據(jù)傳遞給FIMC驅(qū)動中的一個全局參數(shù)s3c_fimc,用于配置FIMC寄存器,然后,初始化OV9650寄存器。

  2.3.2 FIMC驅(qū)動

  FIMC是s3c6410芯片為攝像頭設(shè)備提供的一個接口,用來對所采集的圖像進(jìn)行裁剪、放縮等預(yù)處理。FIMC為輸出圖像提供兩個DMA通道:preivew通道和codec通道,并為每個通道分配四個ping-pong緩沖區(qū),以提高圖像傳輸速度和內(nèi)存使用效率。如圖5所示。

005.jpg

  FIMC接收OV9650圖像數(shù)據(jù),并向上傳遞。因此,F(xiàn)IMC驅(qū)動最重要的作用就是向應(yīng)用層提供標(biāo)準(zhǔn)的操作接口,供應(yīng)用程序使用。

  FIMC驅(qū)動主要包括三個部分:(1)platform驅(qū)動注冊;(2)file_operations接口定義;(3)V4L2接口實(shí)現(xiàn)。

  2.3.2.1 platform驅(qū)動注冊

  platform是Linux 2.6內(nèi)核所引進(jìn)的一種新型驅(qū)動管理和注冊機(jī)制。目前Linux內(nèi)核中大部分的設(shè)備驅(qū)動都采用platform架構(gòu)。在platform架構(gòu)中,設(shè)備用platform_device表示,驅(qū)動用platform_driver表示。Linux platform driver機(jī)制與傳統(tǒng)的device driver機(jī)制(通過drivce_register函數(shù)進(jìn)行注冊)相比,一個十分明顯的優(yōu)勢在于platform機(jī)制將設(shè)備本身的資源注冊進(jìn)內(nèi)核,由內(nèi)核統(tǒng)一管理,在驅(qū)動程序使用這些資源時通過platform device提供的標(biāo)準(zhǔn)接口進(jìn)行申請并使用,提高了驅(qū)動和資源管理的獨(dú)立性,并且擁有較好的可移植性和安全性(這些標(biāo)準(zhǔn)接口是安全的)。

  FIMC驅(qū)動入口函數(shù)是s3c_fimc_core.c中的s3c_fimc_register(),該函數(shù)將platform_driver類型的s3c_fimc_driver掛載到platform虛擬總線。由mach-smdk6410.c文件可知,內(nèi)核啟動時將所有platform_device(包括s3c_device_fimc0)掛載到platform總線。platform總線的match函數(shù)將device和driver匹配之后,會自動調(diào)用s3c_fimc_driver中指定的probe函數(shù)探測設(shè)備、申請內(nèi)存資源、申請中斷等,并將最終形成的platform_device類型數(shù)據(jù)保存到內(nèi)核中,供后續(xù)使用。最后,調(diào)用video_register_device函數(shù)將對應(yīng)的video_device注冊到內(nèi)核。

  video_device結(jié)構(gòu)體包括fops、ioctl_ops、release、name、vf_type幾個成員變量,其中,最重要的是file_operations類型的fops和v4l2_ioctl_ops類型的ioctl_ops,分別實(shí)現(xiàn)文件操作接口和V4L2接口。

  2.3.2.2 file_operations接口

  FIMC驅(qū)動遵循V4L2接口標(biāo)準(zhǔn),其file_operations接口定義如下:

  static const struct v4l2_file_operations s3c_fimc_fops=

  {

  .owner=THIS_MODULE,

  .open=s3c_fimc_open,

  .release=s3c_fimc_release,

  .unlocked_ioctl=video_ioctl2,

  .read=s3c_fimc_read,

  .write=s3c_fimc_write,

  .mmap=s3c_fimc_mmap,

  .poll=s3c_fimc_poll,

  };

  當(dāng)應(yīng)用程序通過系統(tǒng)調(diào)用open()打開攝像頭設(shè)備時,內(nèi)核會最終找到s3c_fimc_open()函數(shù)來打開攝像頭。

  應(yīng)用程序通過read()獲取圖像數(shù)據(jù),該函數(shù)通過copy_to_user()將內(nèi)核空間所申請緩沖區(qū)中圖像數(shù)據(jù)拷貝到用戶空間中開辟的圖像數(shù)據(jù)區(qū)。該函數(shù)沒有充分利用FIMC接口提供的ping-pong緩沖區(qū),按字進(jìn)行拷貝(memcpy),十分耗時。

  mmap函數(shù)將內(nèi)核空間中申請到的圖像緩沖區(qū)映射到應(yīng)用程序所在的用戶空間,這樣,應(yīng)用程序申請到的buffer將指向內(nèi)核空間的圖像緩沖區(qū),應(yīng)用程序可以(不拷貝)直接對圖像進(jìn)行操作。該函數(shù)配合V4L2標(biāo)準(zhǔn)中的環(huán)形緩沖區(qū)隊(duì)列,節(jié)省了應(yīng)用程序讀取圖像數(shù)據(jù)所消耗的時間。

  2.3.2.3 V4L2接口

  V4L2接口功能強(qiáng)大,為應(yīng)用程序提供了完備的操作接口,包括設(shè)置格式、幀率、白平衡、曝光模式、申請緩沖區(qū)、取數(shù)據(jù)、剪裁圖像等。此處僅列舉幾個重要接口。

  const struct v4l2_ioctl_ops s3c_fimc_v4l2_ops=

  {

  .vidioc_s_fmt_vid_cap=

  s3c_fimc_v4l2_s_fmt_vid_cap,

  .vidioc_s_ctrl=s3c_fimc_v4l2_s_ctrl,

  .vidioc_streamon=s3c_fimc_v4l2_streamon,

  .vidioc_streamoff=s3c_fimc_v4l2_streamoff,

  .vidioc_reqbufs=s3c_fimc_v4l2_reqbufs,

  .vidioc_querybuf=s3c_fimc_v4l2_querybuf,

  .vidioc_qbuf=s3c_fimc_v4l2_qbuf,

  .vidioc_dqbuf=s3c_fimc_v4l2_dqbuf,

  .vidioc_s_parm=s3c_fimc_v4l2_s_parm,

  };

  應(yīng)用程序通過ioctl接口使用這些函數(shù),比如ioctl(fd,VIDIOC_S_FMT,&fmt)用來設(shè)置圖像格式,此時V4L2會將VIDIOC_S_FMT命令映射為s3c_fimc_v4l2_s_fmt_vid_cap()函數(shù),并將fmt指定的格式告知FIMC接口,F(xiàn)IMC會將OV9650傳遞過來的原始圖像數(shù)據(jù)經(jīng)過類型轉(zhuǎn)換傳遞回應(yīng)用程序。

  s3c_fimc_v4l2_reqbufs()用于申請圖像緩沖區(qū),該函數(shù)為應(yīng)用程序在內(nèi)核空間開辟ping-pong緩沖區(qū)。s3c_fimc_v4l2_qbuf()函數(shù)將緩沖區(qū)組成環(huán)形緩沖隊(duì)列,當(dāng)應(yīng)用程序需要調(diào)用圖像數(shù)據(jù)時,使用s3c_fimc_v4l2_dqbuf()使指定的緩沖區(qū)出隊(duì),緩沖區(qū)在出隊(duì)期間,不會被新來的圖像數(shù)據(jù)覆蓋,新到的圖像數(shù)據(jù)會被傳送到環(huán)形隊(duì)列中指定緩沖區(qū)的下一個緩沖區(qū)。由于FIMC控制器為P通道和C通道分別開辟了4個緩沖區(qū),在內(nèi)核初始化時已經(jīng)申請到,因此FIMC驅(qū)動中并不需要再重新申請。

  2.4 驅(qū)動錯誤分析與改進(jìn)設(shè)計(jì)

  在驅(qū)動主體框架正確的情況下,開發(fā)板(OK6410A)自帶的驅(qū)動并不能直接使用。同一套V4L2圖像采集程序可以應(yīng)用在USB攝像頭上,應(yīng)用在OV9650上卻無法獲得圖像,并且先后報出兩個錯誤:

  (1)tx or ty is lower than zero and this is a invalid target size

  (2)VIDIOC_QUERYBUF error

  上述錯誤出現(xiàn)之后,LCD屏幕沒有圖像,緊接著串口會顯示display 0,表示程序無法讀出圖像數(shù)據(jù),導(dǎo)致程序終止。下面分別對兩個錯誤進(jìn)行分析并改進(jìn)。

  2.4.1 錯誤1的分析與改進(jìn)

  由于ov9650驅(qū)動僅僅將ov9650設(shè)備注冊進(jìn)入系統(tǒng),并沒有其他處理,因此ov965x.h和ov965x.c兩個文件不用修改和調(diào)試。

  FIMC采用DMA通道向內(nèi)核緩沖區(qū)傳送數(shù)據(jù),需要專門的函數(shù)打開DMA輸出通道。通過函數(shù)跟蹤得知,原有s3c_fimc_v4l2_s_fmt_vid_cap()函數(shù)并沒有打開輸出DMA通道,因此CMOS攝像頭的數(shù)據(jù)并沒有傳送到內(nèi)核開辟的緩沖區(qū)中,導(dǎo)致V4L2也無法獲取這些圖像數(shù)據(jù)。而且由于沒有打開輸出DMA通道,out_frame參數(shù)也沒有設(shè)置,導(dǎo)致其對應(yīng)的尺寸參數(shù)也為0,所以報出第一個錯誤。

  在s3c_fimc_v4l2_s_fmt_vid_cap()中通過調(diào)用s3c_fimc_ set_output_frame()函數(shù),打開輸出DMA通道,解決了該問題。

  2.4.2 錯誤2的分析與改進(jìn)

  該錯誤由s3c_fimc_v4l2_querybuf()函數(shù)報出,報錯條件是:

  if(b->type!=V4L2_BUF_TYPE_VIDEO_OVERLAY&&b

  ->type!=V4L2_BUF_TYPE_VIDEO_CAPTURE)

  該函數(shù)用于配置所申請圖像緩沖區(qū)的長度、偏移量等屬性,從而使所申請的環(huán)形隊(duì)列緩沖區(qū)生效。由于本系統(tǒng)中攝像頭僅用于圖像捕獲,因此在該函數(shù)開頭可以將b->type進(jìn)行強(qiáng)制設(shè)定,即:b->type=V4L2_BUF_ TYPE_VIDEO_CAPTURE,從而解決圖像緩沖區(qū)申請的問題,該錯誤不再出現(xiàn)。

  至此,修正后的FIMC驅(qū)動程序可以正常工作,圖像數(shù)據(jù)得以傳輸?shù)絻?nèi)核中為FIMC驅(qū)動開辟的圖像緩沖區(qū),應(yīng)用程序可以通過read()系統(tǒng)調(diào)用或者ioctl()的VIDIOC_DQBUF命令獲取圖像數(shù)據(jù)。

  圖像捕獲效果如圖6所示。

006.jpg

3 結(jié)論

  本文深入分析了CMOS攝像頭驅(qū)動的原理和實(shí)現(xiàn)細(xì)節(jié)。FIMC驅(qū)動向內(nèi)核申請四個ping-pong緩沖區(qū),通過DMA方式傳入圖像數(shù)據(jù),提高了圖像數(shù)據(jù)傳輸速率。內(nèi)存共享策略使得應(yīng)用程序在訪問圖像緩沖區(qū)時免去了內(nèi)存拷貝的步驟,大大縮減了圖像獲取的時間。但是目前的FIMC驅(qū)動在緩沖區(qū)出隊(duì)和入隊(duì)時的保護(hù)機(jī)制仍不夠完善,需要在今后的工作當(dāng)中對這一部分不斷進(jìn)行優(yōu)化。

參考文獻(xiàn)

  [1] OminiVision Technologies Inc. OV9650 color CMOS SXGA (1.3MegaPixel)camerachipTM implementation guide[EB/OL].(2004-12-07)[2015-01-31]. http://www.ovt.com.

  [2] 胡哲光.基于S3C2440與OV9650的嵌入式監(jiān)控設(shè)計(jì)[J].輕工機(jī)械,2012,30(2):50-53.

  [3] 官志平.基于ARM9的Linux系統(tǒng)移植以及在電梯轎廂內(nèi)人數(shù)檢測的應(yīng)用[D].廈門:廈門大學(xué),2014.

  [4] Lu Yinli, Yu Hongli, Zhang Pengpeng. The implementation of embedded image acquisition based on V4L2[C]. Proceedings of the 2011 International Conference on Electronics, Communications and Control (ICECC), 2011:549-552.

  [5] Zhang Min, Sun Jinguang, Wang Shi. Research and implementation of the CMOS camera device driver based on S3C2440[C]. Proceedings of the 2010 International Conference on Intelligent Computation Technology and Automation (ICICTA),2010:1039-1042.

  [6] Kuang Shunming, He Xiaojian. Included in your digital subscription design and application of CMOS device driver based on S3C2440[C]. Proceedings of the 2011 10th International Conference on Electronic Measurement & Instruments (ICEMI),2011:342-343.

  [7] Samsung. S3C6410x RISC microprocessor user′s manual (revision 1.2)[EB/OL].(2009-02-13)[2015-01-31]. http://www.samsung.com.

  [8] DIRKS B. Video for Linux two API specification (revision 3.9)[EB/OL].(2012-12-03)[2015-01-31]. http://www.linuxtv.org/downloads/v4l-dvb-apis/v4l2spec.html.


此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。
主站蜘蛛池模板: 色婷婷噜噜久久国产精品12p | www黄色大片| 日韩久久久久久 | 一个色综合导航 | 久久精品日产第一区二区 | jzjzjz亚洲丰满少妇 | 在线观看二区 | 日韩三级一区二区 | 人乳喂奶hd播放 | 激情网站视频 | 国产精品18久久久久久久 | 深夜视频在线免费 | 欧美亚洲一级片 | 精品久久久久中文字幕日本 | 波多野结衣在线视频免费观看 | 美女100%挤奶水视频吃胸 | 五月天丁香久久 | 国产精品成人自拍 | 亚洲看片| 男人边吃奶边做好爽免费视频 | 激情综合婷婷色五月蜜桃 | 亚洲一卡2卡三卡四卡精品 曰批免费视频播放免费 | 日韩成人免费在线视频 | 国产一二区在线 | 免费观看黄色一级片 | 伊人资源网 | 黄频在线播放 | www国产精品内射老熟女 | 成人做爰高潮片免费视频韩国 | 国产精品爱久久久久久久电影蜜臀 | 法国人性生活xxxx | 亚洲欧美综合另类自拍 | n0659极腔濑亚美莉在线播放播放 | 乱子伦一区二区三区 | 麻豆chinese极品少妇 | 欧美日韩激情 | 亚洲国产精品成人综合久久久久久久 | 久久久久久久久久久久中文字幕 | 免费国产女王调教在线视频 | 欧美剧场 | 亚洲天堂精品视频 | 国产激情视频在线播放 | 人人插人人爽 | 久久久精品久久久久 | 久久99国产综合精品 | 法国伦理少妇愉情 | 日本无码欧美一区精品久久 | 中文字幕在线播放不卡 | 国产乱淫av麻豆国产 | 欧美在线激情视频 | 巨胸美女爆视频网站 | 4438x成人网最大色成网站 | 亚洲国产精品麻豆 | 国产超碰91 | 九九热在线视频观看 | 91福利视频在线 | 成人片在线播放 | 神马影院午夜伦理 | 中文娱乐综合网777 中文在线第一页 | 久久精品日产第一区二区三区乱码 | 超碰97免费 | 性欧美亚洲xxxx乳在线观看 | 久久九九热re6这里有精品 | 91在线观| 国产精品最新乱视频二区 | 亚洲欧美中文字幕5发布 | 久久大胆视频 | 亚洲午夜国产一区99re久久 | 18视频在线观看网站 | 欧美肥老太牲交大战 | av男女| 久久国产a | 国产日韩视频 | 精品视频一区二区三区四区五区 | 中文字幕免费在线看线人动作大片 | 成人高潮片免费视 | 亚洲国产成人久久一区二区三区 | 国精品99久9在线 | 免费 | 日本边添边摸边做边爱喷水 | 国产裸体写真av一区二区 | 成人免费在线观看av | 久久久国产精品亚洲一区 | 97久久偷偷做嫩草影院免费看 | av第一页| 一本色道久久综合狠狠躁的推荐 | 色老头一区二区三区 | 日韩福利视频导航 | 国产成人精品免高潮在线观看 | 双性大乳浪受古代h男男 | 日韩国产第一页 | 国产精品人成在线播放新网站 | 夜夜导航 | 日本免费在线看 | 可以免费看毛片的网站 | 欧美日韩不卡合集视频 | 不卡的av网站 | 国产又色又爽又黄又免费软件 | 日韩精品久久久久久久的张开腿让 | 欧美大片aaa | 亚洲高清免费视频 | 欧美精品在线看 | 少妇捆绑紧缚av | 无码人妻丰满熟妇区毛片18 | 尤物yw午夜国产精品视频 | 日日夜夜精品视频免费 | 国产亚洲在线 | 欧美婷婷精品激情 | 国产精品一区二区三区不卡 | 日韩毛片无码永久免费看 | 高潮毛片无遮挡高清免费视频网站 | 中文字幕国产专区 | 日韩欧美一区二区三区在线 | www.久久久久久久 | 无码午夜人妻一区二区三区不卡视频 | 色老大影院| 亚洲欧美韩国 | 成人做爰100部片免费看网站 | 久草一级片 | 国内激情| 国产99久久久久久免费看 | 亚洲免费一级视频 | 欧美精品久久久久久久免费 | 你懂得国产 | 无码高潮少妇毛多水多水 | 精品国产一区二区三区久久久狼 | 国偷自产视频一区二区久 | 91一区二区 | www国产国人免费观看视频 | 69久久国产露脸精品国产 | 美女视频久久久 | 天天舔天天爽 | 一级做a爰片性色毛片99高清 | 五月婷婷影院 | 少妇性bbb搡bbb爽爽爽欧美 | 精品国产一区二区三区蜜殿 | 国产又猛又黄又爽 | 国产精品视屏 | 亚洲午夜精品一区二区 | av免费视屏 | 少妇黄色一级片 | 国产对白精品刺激二区国语 | 九九热中文字幕 | 深爱激情综合 | 黄色片链接 | 免费精品99久久国产综合精品 | 亚洲v欧美v | 久久久久国产一区二区 | 日韩精品国产另类专区 | 欧美精品一区二区三区免费视频 | 国产精品字幕 | 国产xxxx高清在线观看 | 亚洲产国偷v产偷v自拍色戒 | 天干天干啦夜天干天2017 | 97影院| 久久青青草原国产毛片 | 好男人www社区在线视频夜恋 | 精品福利一区二区三区 | 免费中文字幕在线观看 | 国产精品裸体瑜伽视频 | 天天鲁一鲁摸一摸爽一爽 | 日本高清视频www | porn国产| 亚洲国产成人av在线观看 | 白石茉莉奈一区二区av | 国产精品入口66mio男同 | 久久观看最新视频 | 四季久久免费一区二区三区四区 | 亚洲天堂视频网站 | 久久激情免费视频 | 久久精品国产999大香线蕉 | 日日爱视频 | 精品国产美女福到在线不卡 | 日韩美女视频一区二区 | 黄色1级视频| 亚洲欧美精品在线 | 国产精品视频99 | 夜夜草视频 | 国产精品三p一区二区 | 欧美日韩国产综合在线 | bb日韩美女预防毛片视频 | 日韩欧美在线第一页 | 亚洲线精品一区二区三区 | 夜夜爱夜夜做夜夜爽 | 潘金莲性生交大片免费看图片 | 久久久久夜夜夜精品国产 | 中文字幕亚洲综合久久 | 国产精品538一区二区在线 | 少妇毛片 | 美女内射视频www网站午夜 | 55夜色66夜色国产精品视频 | 免费成人视屏 | 亚洲精品成人在线视频 | caoporon成人超碰公开网站 | 一级做性色α爱片久久毛片色 | 毛片视频网站在线观看 | 亚洲摸丰满大乳奶水 | 欧美成人精品在线观看 | 日日鲁鲁鲁夜夜爽爽狠狠 | а√天堂资源中文在线官网九色 | 亚洲综合天堂av网站在线观看 | 先锋影音av资源在线观看 | 免费观看激色视频网站 | 亚洲国产欧洲 | 国产三级毛片视频 | 亚洲欧洲天堂 | 日本理论片a级奶大 | 久草欧美 | 手机在线免费观看av片 | 美女少妇一区二区 | 丁香六月综合激情 | 亚洲中文字幕无码久久2017 | 图书馆的女友动漫在线观看 | 国产在线青青草 | 日韩欧美一区二区视频 | 国产婷婷色一区二区三区在线 | 二三区视频 | 狠狠v欧美v日韩v亚洲ⅴ | 亚洲三级欧美 | 黄色一级大片免费看 | 欧美性做爰视频 | 69中国xxxxxxxxx69| 久久成年片色大黄全免费网站 | 超碰这里只有精品 | 久操免费在线 | 亚洲偷 | 日韩一级片中文字幕 | 福利在线免费 | 国产九色在线播放九色 | 日日摸日日 | theporn国产在线精品 | 色成人亚洲 | www,超碰| 国产亚州精品女人久久久久久 | 无收费看污网站 | 国产精品禁18久久久夂久 | 精品久久久久久无码中文字幕 | 亚洲国产成人精品女人 | 男人天堂你懂的 | 男人av网站| 欧美性xxxx极品少妇 | 国产一级一片免费播放 | 特黄特色大片免费播放叫疼 | 一级日韩毛片 | 97成人免费 | 午夜av亚洲女人剧场se | 日本一区二区三区高清在线观看 | 涩涩的视频在线观看 | 欧美一卡二卡 | 91精品国产综合久久久蜜臀粉嫩 | 国产美女网 | 夜夜爽夜夜叫夜夜高潮漏水 | 91精品国产乱码久久久竹菊 | 成人免费无尽视频 | 亚洲成人免费观看 | 女攻总攻大胸奶汁(高h) | 国产亚洲91| 色视频免费观看 | 999这里只有精品 | 中文字幕不卡二区 | 天天躁夜夜躁狠狠是什么心态 | 成人免费无遮挡无码黄漫视频 | 欧美视频一区二区三区四区在线观看 | 国产成人精品在线播放 | 99精品一区二区三区无码吞精 | 久久精品国产亚洲7777 | 88国产精品视频一区二区三区 | 国产欧美一区二区三区不卡视频 | www亚洲天堂com | 成长快手短视频在线观看 | 小泽玛利亚一区二区在线观看 | 欧美最猛黑人xxxx黑人猛叫黄 | 国产你懂得 | 久久久久亚洲精品男人的天堂 | 亚洲免费精品网站 | 侵犯の奶水授乳羞羞游戏 | 希岛婚前侵犯中文字幕在线 | 不卡av网站 | 玩弄japan白嫩少妇hd | 久久久精品国产免大香伊 | 天天干天天干天天操 | 黑人借宿巨大中文字幕 | 性色av蜜臀av牛牛影院 | 少妇沉沦哀羞迎合呻吟视频 | 久久综合久久久久 | 男人进入女人下部视频 | 国产免费一级 | 亚洲女同在线观看 | 青青青国产在线 | 日本伦理一区 | 99爱影视| 久久久久久久久久久影院 | 91九色偷拍 | 美女插插视频 | 色小说香蕉 | 国产精品白嫩白嫩大学美女 | 精品人妻少妇嫩草av无码专区 | 亚洲精品久久午夜无码一区二区 | 深爱激情站 | 午夜精品在线播放 | 国产真实交换配乱吟91 | 久久日av | 一级黄色免费片 | 日产mv免费观看 | 农村偷人一级超爽毛片 | 大肉大捧一进一出好爽视频动漫 | 人妻熟妇乱又伦精品视频 | 成人男男视频拍拍拍在线观看 | 国产黄大片| 午夜性刺激在线视频免费 | 久久精品人妻少妇一区二区三区 | 亚洲ⅴ国产v天堂a无码二区 | 国产精品日韩av在线播放 | 一本一道av无码中文字幕﹣百度 | 日韩人妻熟女毛片在线看 | 欧美视频在线观看免费 | 毛片av免费 | 国产精品v亚洲精品v日韩精品 | 国产伦精品一区二区三区在线 | 国产精品视频专区 | 久久久久久九九九九 | 国产日韩在线观看视频 | 国产区在线看 | 亚洲午夜色 | 一本一道久久a久久精品综合 | 中国免费黄色片 | 成人毛片18女人毛片免费 | 操欧美女 | 国产精品美女久久久av超清 | 扒开双腿被两个男人玩弄视频 | 成人h视频在线观看 | 国产大片黄在线观看 | 日韩有码在线播放 | 欧美女人性生活视频 | 分分操免费视频在线观看 | 蜜桃视频黄色 | 不卡中文字幕av | 精品久久久久久亚洲 | 国产真实乱偷精品视频免 | 天天干天天爽天天操 | 顶级黄色片 | 伊人久久国产精品 | 黄色大片网站在线观看 | 国产福利在线观看视频 | 亚洲 中文字幕 日韩 无码 | 夜夜夜网站| 国产清纯在线一区二区 | 十八女人国产毛毛片视频 | 国产精品一区在线看 | 久久精品天堂 | 成年人黄色大片 | 国产欧美日韩视频 | 日韩成人在线免费观看 | 日本视频网址 | 天天做天天摸天天爽欧美一区 | 免费看色 | 午夜精品久久久久久久四虎美女版 | 无码人妻精品中文字幕 | 五月婷婷天 | 图片区小说区区国产明星 | 亚洲欧洲无码一区二区三区 | 亚洲一区二区影院 | 精品久久久久久久久久岛国gif | 日日摸天天做天天添天天欢 | 一区二区三区视频在线看 | 精品久久久久久中文字幕 | 任你躁一区二区久久99 | av潮喷大喷水系列无码 | 在线看片wwwzzz | 啦啦啦中文在线视频免费观看 | 北条麻妃99精品青青久久 | 国产女主播在线 | 中文字幕在线字幕中文 | 国产男女视频在线观看 | 国产一区二区免费播放 | 国产欧美一区二区三区国产幕精品 | 人人综合亚洲无线码另类 | 香港三级日本三级a视频 | 中文字幕乱码一区av久久不卡 | 韩国三级丰满少妇高潮 | 国产一级淫片a按摩推澡按摩 | 网站一区二区 | 国产老女人91精品一区 | avhd101在线播放高清谜片 | 熟妇女人妻丰满少妇中文字幕 | 日本一区二区免费在线 | 少妇视频在线观看 | 国产精品久久久久久久久久了 | 又摸又揉又黄又爽的视频 | 久久久91精品 | 五月天精品一区二区三区 | 成人在线h | 日本伊人色 | 久久人妻少妇嫩草av无码专区 | 成人手机在线播放 | 国产精品高清网站 | ⅹ一art唯美在线观看 | 丁香六月啪啪 | 97干视频| 麻豆安全免费网址入口 | a男人天堂| 日本免费人成视频在线观看 | 亚洲另类交 | 香蕉视频色 | 欧洲成人一区二区 | 国产美女免费看 | 在线不卡一区 | 久久久久久97免费精品一级小说 | 99免费国产 | 天天爽天天噜在线播放 | 99久久精品费精品国产风间由美 | 四虎国产精品永久地址99 | √8天堂资源地址中文在线 √天堂 | 最新视频 - x88av | 久久不雅视频 | 亚洲精选一区 | 国产高清精品在线观看 | 一级做a爱片久久毛片 | 91福利区| 一区二区三区在线视频免费观看 | 亚洲国产中文在线二区三区免 | 性色av一区二区三区 | 国产视频精品一区二区三区 | 九九热视频免费观看 | 一道本在线伊人蕉无码 | 美女裸体自慰在线观看 | 高潮的毛片激情久久精品 | 免费观看bbb毛片大全 | 美女破处视频 | 我撕开了少妇的蕾丝内裤视频 | 久久精品人人做人人爽97 | www.天天干| 久久精品国产欧美亚洲人人爽 | 带aaa级的网名 | 成人亚洲欧美成αⅴ人在线观看 | 欧美日韩视频免费观看 | 久久久91视频 | 黄在线免费观看 | 午夜精品一区二区三区在线 | 久久99精品热在线观看 | 午夜影院日本 | 久久99精品国产麻豆婷婷小说 | 双腿张开被9个黑人调教影片 | 欧美人与性囗牲恔配 | 强迫凌虐淫辱の牝奴在线观看 | 欧美激情黑白配 | 色婷婷丁香 | 久久久久99精品成人片试看 | 韩国日本三级在线观看 | 国产无遮挡无码视频免费软件 | 久久久久久久久久久久久久久久久 | 免费无码毛片一区二区app | 国产高潮刺激叫喊视频 | 欧美一区二区在线观看视频 | 国产精品久久久久久久新郎 | 大奶子在线 | 日本免费在线看 | 国内激情av片 | 97桃色| 人妻在厨房被色诱 中文字幕 | 91亚洲视频在线 | 在线观看国产精品视频 | 精品视频一二区 | 国产成人三级在线视频 | 国产丝袜一区二区三区 | 成人在线视频播放 | 91麻豆视频在线观看 | 国产美女炮机视频 | 国产尤物av尤物在线看 | 黄瓜视频色| 色九九视频| 高潮喷水抽搐无码免费 | 性一交一乱一伧老太 | 日日干视频 | 国语对白做受xxxxx在 | 亚洲国产成人av毛片大全 | 激情内射亚洲一区二区三区 | 国产精品一区二区三区四区在线观看 | yourporn久久久亚洲精品 | 少妇精品一区二区三区在线观看 | 刚添一下她就呻吟起来的视频 | 国产精品99久久久久久人 | 九九久久精品 | 91久久精品国产91性色tv | 日韩欧美群交p片內射中文 三级4级全黄60分钟 | 欧美熟妇丰满肥白大屁股免费视频 | 97色在线观看 | 亚洲风情第一页 | av的天堂| 巨肉黄暴辣文高h文帐中香 巨乳动漫美女 | 日产成品片a直接观看 | 豆花av在线| 欧美91精品久久久久国产性生爱 | 性国产三级在线观看 | 涩涩av在线 | 五十路亲子中出在线观看 | 久久精品黄aa片一区二区三区 | 99久久精品午夜一区二区 | 成人99一区二区激情免费看 | 五月天黄色网 | 亚洲jlzzjizz少妇 | 91精品啪在线观看国产81旧版 | 国产精品国产三级国产有见不卡 | 在线观看日批 | 欧美牲交a欧牲交aⅴ久久 | 男女性爽大片视频 | 亚洲综合五月天婷婷丁香 | 久久久久久一区二区三区四区别墅 | 亚洲日本区| 麻豆社| 国产精品igao视频 | 免费人成在线观看网站品爱网 | 久久国产影院 | 午夜av一区二区三区 | 99久久er热在这里只有精品15 | 成人国产精品 | 久久ク成人精品中文字幕 | 日本女优网址 | 视频精品一区二区三区 | 午夜视频91 | 国产网站入口 | 久久狼人亚洲精品一区 | 成人国产精品一区二区 | 日本亚洲最大的色成网站www | www99日本精品片com | 国产色视频 | 国产美女久久久 | 国产裸体无遮挡免费精品视频 | 无码人妻丰满熟妇奶水区码 | 欧美最猛黑人xxxx黑人猛交 | 伊人三级| 日本三级在线观看免费 | 亚洲综合色av| 亚洲高清国产拍精品网络战 | 国产一级美女 | 国产片久久久 | 高清视频在线播放 | 日韩欧美不卡 | 日韩精品免费一区二区在线观看 | 漂亮人妻被中出中文字幕久久 | 手机在线一区二区 | 51免费动漫网永久入口 | 最好看十大无码av | 深夜福利在线免费观看 | 亚洲一区二区三区成人网站 | 中文字幕亚洲区 | 中国丰满人妻videoshd | 亚洲国产午夜精品理论片 | 国产精品12页 | 日韩成人大屁股内射喷水 | 国产又色又爽又黄刺激视频免费 | 69视频免费观看 | 国产黄色免费观看 | 夜夜添日日射 | 懂色av一区二区夜夜嗨 | 中文字幕av免费观看 | 国产 一二三四五六 | 欧美亚洲国产成人 | 全国最大的成人网 | 人成在线免费视频 | 欧美一区2区三区4区公司 | 无码午夜人妻一区二区三区不卡视频 | 国内精品视频在线 | 日本三级三级三级三级 | 国产亲子乱露脸 | 亚洲色图欧美激情 | 校园春色 亚洲色图 | av看片| 欧美色图中文字幕 | 99久久亚洲精品视香蕉蕉v | 视频国产在线 | 黄色一级生活片 | 中文字幕第49页 | 日韩国产欧美一区 | 日韩黄色片 | 激情综合婷婷色五月蜜桃 | 精品久久伊人 | 日本乳喷榨乳奶水视频 | 日日摸夜夜添狠狠添久久精品成人 | 国产精品国产三级国产普通 | 中文字幕精品亚洲无线码二区 | 色网站在线看 | 午夜美女国产毛片福利视频 | 欧美色图一区二区 | 国产高清视频在线免费观看 | 国产成人精品综合在线观看 | 久久香蕉国产精品麻豆粉嫩av | 日日爽日日操 | 国产日产精品久久快鸭的功能介绍 | 亚洲成av人片一区二区 | 无码午夜福利视频一区 | 国产在线视频www色 日韩精品av一区二区三区 | 国内自拍青青草 | 色悠悠av| 中国大陆一级毛片 | 日韩精品久久久久久久电影蜜臀 | 午夜偷拍视频 | 丝袜美腿一区二区三区 | 性xxxx视频播放免费 | 久久99免费 | 乱荡少妇xxhd | 五月天黄色网 | 狠狠色丁香婷婷久久综合五月 | 国产精品偷伦视频免费手机播放 | 亚洲日韩中文字幕一区 | 波多野结衣黄色网址 | 亚洲图片欧美视频 | 国产精华7777777 | 欧美国产精品日韩在线 | 性做久久久久久久久 | 三级特黄 | 中国字幕一色哟哟 | 色诱av | 55夜色66夜色国产精品视频 | 国产精品福利一区二区 | 精品久久久久久中文字幕大豆网 |