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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

Linux驱动基础:msm平台,modem等framework加载

發布時間:2025/4/16 linux 55 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Linux驱动基础:msm平台,modem等framework加载 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

msm平臺,AP和CP封裝在一起,公用一塊內存。所以AP需要負責把整個modem, TZ , rpm等binary拷貝到內存中以供modem等subsystem去運行。那AP這邊是怎么分配這些內存,又是怎么讀出來相關的binary,又如何把binary上傳上去的呢??

相關的feature

CONFIG_FW_LOADER CONFIG_FW_LOADER_USER_HELPER
  • 1
  • 2

modem使用的內存申請

要設置modem的內存大小,必須首先需要確認modem binary的大小,modem需要使用的內存大小等。這個在CMA相關的內容中說過。這里在說一下高通msm8916平臺,modem大小檢查以及修改方法。?
1) modem binary的大小可以從以下編譯的log里邊看出來!!(modem_proc/build/ms目錄下的pplk-XXX.log或者build_xxxx.log)。?
根據大小對齊1MB大小,就是modem binary需要流出來的大小。看如下例子里邊的log,總的大小是77.04,?
所以需要在上面的dtsi文件中留出來78MB就可以。

Image loaded at virtual address 0xc0000000 Image: 55.44 MiB AMSS Heap: 7.50 MiB (dynamic) MPSS Heap: 4.00 MiB (dynamic) DSM Pools: 5.06 MiB Q6Zip RO, Swap Pool: 2.00 MiB (dynamic) Q6Zip RW, Swap Pool: 1.00 MiB (dynamic) Q6Zip RW, dlpager Heap: 1.00 MiB Extra: 0.54 MiB Pad ding: 0.37 MiB End Address Alignment: 0.13 MiB Total: 77.04 MiB Available: 7.96 MiB
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

2) 然后去修改modem_proc/config/xxx/ 目錄下的cust_config.xml文件中修改modem大小

<!-- 85 MB of physical pool--> <physical_pool name="DEFAULT_PHYSPOOL"> <region base="0x88000000" size="0x5500000" /> <region base="0x88000000" size="0x4E00000" /> </physical_pool>
  • 1
  • 2
  • 3
  • 4
  • 5

以下是modem相關的device tree的設置。這些內容也在CMA和ion內存相關的帖子里邊都講過。?
但之前有一個疑問就是,在CMA預留了一段內存之后,會把這個賦值給modem的dev->cma_area,然后在分配需要使用的內存的時候從dev->cma_area中取出來,那這個過程好像跟ion內存沒有什么關系。能不能去掉下面msmxxx-ion.dtsi中?
modem_adsp_mem相關的設置呢???
是可以的!!!其他幾個DMA區域,如果直接從CMA分配的話,應該都可以從msmxxx-ion.dtsi文件中去掉!!?
也就是說下面qcom,ion-heap-type = “DMA”的部分其實都可以從msm8916-ion.dtsi文件中去掉,不影響。

//modem相關內存的device tree設置//pil設備相關的device tree定義qcom,mss@4080000 {compatible = "qcom,pil-q6v56-mss";....linux,contiguous-region = <&modem_adsp_mem>;};//msmxxx-ion.dtsi定義了如下,上面說了這個部分其實是可以去掉的,不會影響相關內存的分配!!qcom,ion-heap@26 { /* MODEM HEAP */compatible = "qcom,msm-ion-reserve";reg = <26>;linux,contiguous-region = <&modem_adsp_mem>;qcom,ion-heap-type = "DMA";};//msmxxx-memory.dtsi定義了如下內容modem_adsp_mem: modem_adsp_region@0 {linux,reserve-contiguous-region;linux,reserve-region;linux,remove-completely;reg = <0x0 0x86800000 0x0 0x05800000>;label = "modem_adsp_mem";};
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24

modem_adsp_mem指定的區域,需要分配出來,以供下載modem binary。

//pil_mss_driver_probe()->pil_subsys_init() static int pil_subsys_init(struct modem_data *drv,struct platform_device *pdev) {...drv->subsys_desc.name = "modem";drv->subsys_desc.dev = &pdev->dev;drv->subsys_desc.owner = THIS_MODULE;drv->subsys_desc.shutdown = modem_shutdown;drv->subsys_desc.powerup = modem_powerup;drv->subsys_desc.ramdump = modem_ramdump;drv->subsys_desc.free_memory = modem_free_memory;drv->subsys_desc.crash_shutdown = modem_crash_shutdown;drv->subsys_desc.err_fatal_handler = modem_err_fatal_intr_handler;drv->subsys_desc.stop_ack_handler = modem_stop_ack_intr_handler;drv->subsys_desc.wdog_bite_handler = modem_wdog_bite_intr_handler;drv->subsys = subsys_register(&drv->subsys_desc);drv->ramdump_dev = create_ramdump_device("modem", &pdev->dev);...return ret; }
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23

之后在modem_powerup()的時候,會先根據modem binary的elf結構獨處modem的大小等,然后計算出align之后應該的大小。?
pil_boot()-> request_firmware()讀出elf頭并計算大小等。?
在pil_setup_region()->pil_alloc_region()的時候,傳進去的大小就是從上面讀出來的大小。

pil_alloc_region min_addr = 0xc0000000 , max_addr = 0xc2b00000 , aligned_size = 0x2b00000
  • 1

這里看著和實際的內存大小一致!! 可能是因為留出來的CMA區域的大小正好和這個大小一致才這樣的。?
在實際調試過程中,也可以打印這個大小之后,調整CMA大小。

再看看實際的CMA大小是怎么申請的。

//調用順序 pil_boot()->pil_init_mmap()->pil_setup_region()->pil_alloc_region()-> dma_alloc_attrs()->arm_dma_alloc()->__dma_alloc()->__alloc_from_contiguous()->
  • 1
  • 2
  • 3

這個調用的順序,一步一步往下看可以看到,實際上分配的區域是一塊CMA區域,而且就是在CMA注冊之后,在相應的platform設備注冊的時候保存到dev->cma_area中的區域。?
在相應的設備注冊的時候,如果設備的device tree中有”linux,contiguous-region”的時候,就會尋找相應的CMA區域并進行保留。這都是因為注冊了platform_bus_typ的notifier函數

bus_register_notifier(&platform_bus_type, &cma_dev_init_nb);
  • 1

看下面的log。

<6>[0.487642] [0:swapper/0:1] cma: Assigned CMA region at 0 to 1de0000.qcom,venus device <6>[0.489469] [0:swapper/0:1] cma: Assigned CMA region at 0 to 4080000.qcom,mss device <6>[0.490756] [0:swapper/0:1] cma: Assigned CMA region at 0 to a21b000.qcom,pronto device <6>[1.125342] [0:swapper/0:1] cma: Assigned CMA region at 0 to 8.qcom,ion-heap device <6>[1.125793] [0:swapper/0:1] cma: Assigned CMA region at 0 to 1b.qcom,ion-heap device <6>[1.126233] [0:swapper/0:1] cma: Assigned CMA region at 0 to 1c.qcom,ion-heap device <6>[1.126671] [0:swapper/0:1] cma: Assigned CMA region at 0 to 17.qcom,ion-heap device <6>[1.127298] [0:swapper/0:1] cma: Assigned CMA region at 0 to 1a.qcom,ion-heap device
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

這里看到4080000.qcom,mss這個device相應的區域已經保留了CMA區域。?
然后在上面進行分配的時候,在?
__alloc_from_contiguous()->dma_alloc_from_contiguous()->dev_get_cma_area()函數中取到?
相應的dev->cma_area。

modem相關內存的使用和下載

pil_load_seg()->request_firmware_direct()->_request_firmware()函數身生成相應的device節點,并通知ueventd去讀取相應的binary然后下載。以下是pil_load_seg里邊打印的正在試圖下載的binary。

<6>[29.129737] [1:init:1] pil_load_seg fw_name = modem.b02 <6>[29.157808] [1:init:1] pil_load_seg fw_name = modem.b07 <6>[29.191477] [1:init:1] pil_load_seg fw_name = modem.b17 <6>[29.348480] [1:init:1] pil_load_seg fw_name = modem.b19 <6>[29.409733] [1:init:1] pil_load_seg fw_name = modem.b20 <6>[29.489639] [1:init:1] pil_load_seg fw_name = modem.b23 <6>[29.519624] [1:init:1] pil_load_seg fw_name = modem.b24 <6>[29.549829] [1:init:1] pil_load_seg fw_name = modem.b25 <6>[29.591918] [1:init:1] pil_load_seg fw_name = modem.b27 <6>[31.997036] [0:wcnss_service:307] pil_load_seg fw_name = wcnss.b02 <6>[32.658390] [0:wcnss_service:307] pil_load_seg fw_name = wcnss.b04 <6>[32.693754] [0:wcnss_service:307] pil_load_seg fw_name = wcnss.b06 <6>[32.848104] [3:wcnss_service:307] pil_load_seg fw_name = wcnss.b09 <6>[32.854061] [3:wcnss_service:307] pil_load_seg fw_name = wcnss.b10 <6>[32.876115] [3:wcnss_service:307] pil_load_seg fw_name = wcnss.b11 <6>[37.384287] [1:TimedEventQueue:771] pil_load_seg fw_name = venus.b02 <6>[37.438222] [1:TimedEventQueue:771] pil_load_seg fw_name = venus.b03 <6>[37.484909] [2:TimedEventQueue:771] pil_load_seg fw_name = venus.b04
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18

在 _request_firmware()->fw_load_from_user_helper()->_request_firmware_load()函數中就在生成相應的dev節點,并通知ueventd。

static int _request_firmware_load(struct firmware_priv *fw_priv, bool uevent,long timeout) {int retval = 0;struct device *f_dev = &fw_priv->dev;struct firmware_buf *buf = fw_priv->buf;struct bin_attribute *fw_attr_data = buf->dest_addr ?&firmware_direct_attr_data : &firmware_attr_data;/* fall back on userspace loading */buf->is_paged_buf = buf->dest_addr ? false : true;dev_set_uevent_suppress(f_dev, true);/* Need to pin this module until class device is destroyed */__module_get(THIS_MODULE);retval = device_add(f_dev);//以下生成的data和loading節點,用于ueventd讀取相應的binary,然后通過節點加載到內存的。//用于下載的節點,retval = device_create_bin_file(f_dev, fw_attr_data);//生成一個loading的節點,loading節點用于控制的retval = device_create_file(f_dev, &dev_attr_loading);if (retval) {dev_err(f_dev, "%s: device_create_file failed\n", __func__);goto err_del_bin_attr;}if (uevent) { //這里正在通知ueventddev_set_uevent_suppress(f_dev, false);dev_dbg(f_dev, "firmware: requesting %s\n", buf->fw_id);if (timeout != MAX_SCHEDULE_TIMEOUT)schedule_delayed_work(&fw_priv->timeout_work, timeout);kobject_uevent(&fw_priv->dev.kobj, KOBJ_ADD);}wait_for_completion(&buf->completion);cancel_delayed_work_sync(&fw_priv->timeout_work); }
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41

_request_firmware() -> assign_firmware_buf() 這是做什么的??

來看一下ueventd.c文件中是怎么檢測這個然后讀binary,通過loading節點加載binary的。

int ueventd_main(int argc, char **argv){...while(1) {ufd.revents = 0;nr = poll(&ufd, 1, -1);if (nr <= 0)continue;if (ufd.revents & POLLIN)handle_device_fd();} }void handle_device_fd(){...handle_firmware_event(&uevent);//process_firmware_event() }#define SYSFS_PREFIX "/sys" #define FIRMWARE_DIR1 "/etc/firmware" #define FIRMWARE_DIR2 "/vendor/firmware" #define FIRMWARE_DIR3 "/firmware/image" #define FIRMWARE_DIR4 "/firmware-modem/image" #define DEVICES_BASE "/devices/soc.0"static void process_firmware_event(struct uevent *uevent){...l = asprintf(&root, SYSFS_PREFIX"%s/", uevent->path);l = asprintf(&loading, "%sloading", root);l = asprintf(&file1, FIRMWARE_DIR1"/%s", uevent->firmware);l = asprintf(&file2, FIRMWARE_DIR2"/%s", uevent->firmware);l = asprintf(&file3, FIRMWARE_DIR3"/%s", uevent->firmware);l = asprintf(&file4, FIRMWARE_DIR4"/%s", uevent->firmware);loading_fd = open(loading, O_WRONLY);...if(!load_firmware(fw_fd, loading_fd, data_fd)) //加載binaryINFO("firmware: copy success { '%s', '%s' }\n", root, uevent->firmware);elseINFO("firmware: copy failure { '%s', '%s' }\n", root, uevent->firmware);}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42

以下看看ueventd中,真正把讀到的binary,傳給kernel的函數

static int load_firmware(int fw_fd, int loading_fd, int data_fd) {struct stat st;long len_to_copy;int ret = 0;//fstat查看binary的信息,讀出來size等if(fstat(fw_fd, &st) < 0)return -1;len_to_copy = st.st_size;write(loading_fd, "1", 1); /* start transfer */while (len_to_copy > 0) {char buf[PAGE_SIZE];ssize_t nr;//讀nr = read(fw_fd, buf, sizeof(buf));if(!nr)break;if(nr < 0) {ret = -1;break;}len_to_copy -= nr;while (nr > 0) {ssize_t nw = 0;//寫到data節點nw = write(data_fd, buf + nw, nr);if(nw <= 0) {ret = -1;goto out;}nr -= nw;}}out:if(!ret) //loading節點用于通知kernel加載情況!!write(loading_fd, "0", 1); /* successful end of transfer */elsewrite(loading_fd, "-1", 2); /* abort transfer */return ret; }
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46

內核中,data節點出來write的函數在_request_firmware_load()中根據buf->dest_addr的值有所不同

static int _request_firmware_load(struct firmware_priv *fw_priv, bool uevent,long timeout) {...struct bin_attribute *fw_attr_data = buf->dest_addr ?&firmware_direct_attr_data : &firmware_attr_data;...}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

在下載modem.bxx的時候應該都是有buf->dest_addr才對

<6>[29.355860] [0:init:1] pil_load_seg fw_name = modem.b02 <6>[29.361829] [0:init:1] fw_load_from_user_helper start <6>[29.368051] [0:init:1] _request_firmware_load buf->dest_addr = 0x86800000 <6>[29.380308] [0:ueventd:230] firmware_loading_store started ... <6>[29.391942] [0:init:1] pil_load_seg fw_name = modem.b07 <6>[29.398801] [0:init:1] fw_load_from_user_helper start <6>[29.404996] [0:init: 1] _request_firmware_load buf->dest_addr = 0x86840000 ...
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
//write(data_fd, buf + nw, nr); buf對應buffer? offset? count對應nr?? static ssize_t firmware_direct_write(struct file *filp, struct kobject *kobj,struct bin_attribute *bin_attr,char *buffer, loff_t offset, size_t count) {struct device *dev = kobj_to_dev(kobj);struct firmware_priv *fw_priv = to_firmware_priv(dev);//獲取uevent讀取modem binary時候讀到的內容,保存在firmware_priv中。firmware_priv中的firmware_buf保存了binary的物理地址,大小等等信息struct firmware *fw;ssize_t retval;if (!capable(CAP_SYS_RAWIO))return -EPERM;mutex_lock(&fw_lock);fw = fw_priv->fw;if (!fw || test_bit(FW_STATUS_DONE, &fw_priv->buf->status)) {retval = -ENODEV;goto out;}retval = __firmware_data_rw(fw_priv, buffer, &offset, count, 0);if (retval < 0)goto out;fw_priv->buf->size = max_t(size_t, offset, fw_priv->buf->size); out:mutex_unlock(&fw_lock);return retval; }static int __firmware_data_rw(struct firmware_priv *fw_priv, char *buffer,loff_t *offset, size_t count, int read) {u8 __iomem *fw_buf; struct firmware_buf *buf = fw_priv->buf;int retval = count;if ((*offset + count) > buf->dest_size) {pr_debug("%s: Failed size check.\n", __func__);retval = -EINVAL;goto out;}//fw_buf 就是要拷貝到內存中的modem binary物理地址對應的虛擬地址。//map_fw_mem函數中,會根據虛擬地址以及需要拷貝的大小,map出一段虛擬地址。//map一段物理地址,然后返回內核可以訪問的虛擬地址,,這個是通過ioremap相關的函數實現的fw_buf = buf->map_fw_mem(buf->dest_addr + *offset, count,buf->map_data);if (!fw_buf) {pr_debug("%s: Failed ioremap.\n", __func__);retval = -ENOMEM;goto out;}//讀寫,直接拷貝就可以if (read)memcpy(buffer, fw_buf, count);elsememcpy(fw_buf, buffer, count);*offset += count;buf->unmap_fw_mem(fw_buf, count, buf->map_data);out:return retval; }static void *map_fw_mem(phys_addr_t paddr, size_t size, void *data) {struct pil_map_fw_info *info = data;return dma_remap(info->dev, info->region, paddr, size,&info->attrs); }static inline void *dma_remap(struct device *dev, void *cpu_addr,dma_addr_t dma_handle, size_t size, struct dma_attrs *attrs) {const struct dma_map_ops *ops = get_dma_ops(dev);BUG_ON(!ops);if (!ops->remap) {WARN_ONCE(1, "Remap function not implemented for %pS\n",ops->remap);return NULL;}return ops->remap(dev, cpu_addr, dma_handle, size, attrs); }static void *arm_dma_remap(struct device *dev, void *cpu_addr,dma_addr_t handle, size_t size,struct dma_attrs *attrs) {struct page *page = pfn_to_page(dma_to_pfn(dev, handle));pgprot_t prot = __get_dma_pgprot(attrs, PAGE_KERNEL);unsigned long offset = handle & ~PAGE_MASK;size = PAGE_ALIGN(size + offset);return __dma_alloc_remap(page, size, GFP_KERNEL, prot,__builtin_return_address(0)) + offset;}static void * __dma_alloc_remap(struct page *page, size_t size, gfp_t gfp, pgprot_t prot,const void *caller) {struct vm_struct *area;unsigned long addr;/** DMA allocation can be mapped to user space, so lets* set VM_USERMAP flags too.*///得到一段滿足要求的vm_struct。這里area = get_vm_area_caller(size, VM_ARM_DMA_CONSISTENT | VM_USERMAP,caller);if (!area)return NULL; addr = (unsigned long)area->addr; area->phys_addr = __pfn_to_phys(page_to_pfn(page));//addr是得到的vm_struct對應的虛擬地址,內核可以訪問的//所以根據物理地址以及對應的虛擬地址以及大小等情況,ioremap_page_range會做一個page table//這樣內核就可以直接訪問這段內存if (ioremap_page_range(addr, addr + size, area->phys_addr, prot)) {vunmap((void *)addr);return NULL;}return (void *)addr;//返回虛擬內存,現在這個虛擬內存就可以直接訪問了 }
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • 65
  • 66
  • 67
  • 68
  • 69
  • 70
  • 71
  • 72
  • 73
  • 74
  • 75
  • 76
  • 77
  • 78
  • 79
  • 80
  • 81
  • 82
  • 83
  • 84
  • 85
  • 86
  • 87
  • 88
  • 89
  • 90
  • 91
  • 92
  • 93
  • 94
  • 95
  • 96
  • 97
  • 98
  • 99
  • 100
  • 101
  • 102
  • 103
  • 104
  • 105
  • 106
  • 107
  • 108
  • 109
  • 110
  • 111
  • 112
  • 113
  • 114
  • 115
  • 116
  • 117
  • 118
  • 119
  • 120
  • 121
  • 122
  • 123
  • 124
  • 125
  • 126
  • 127
  • 128
  • 129
  • 130
  • 131
  • 132
  • 133
  • 134
  • 135
  • 136

和ioremap_page_range()比較像。

總結

以上是生活随笔為你收集整理的Linux驱动基础:msm平台,modem等framework加载的全部內容,希望文章能夠幫你解決所遇到的問題。

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

一级淫片在线观看 | 久久精品一区二区三区国产主播 | 天天弄天天干 | 欧美视频日韩视频 | 国产精品大片在线观看 | 久久精品视频2 | 婷婷综合国产 | 日韩成人免费在线电影 | 97在线观看| 伊人伊成久久人综合网小说 | 亚洲精品男人的天堂 | 一本一本久久a久久精品综合小说 | 久久激情五月婷婷 | 久久国产三级 | 国产精品大片在线观看 | 久久亚洲精品电影 | 久久国产免费看 | 激情综合电影网 | 久久久久久电影 | 精品久久一 | 亚洲精品动漫成人3d无尽在线 | 观看免费av | 精品国产一区二区三区蜜臀 | 久久精美视频 | 91精品一 | 久久综合九色综合欧美狠狠 | 黄色成人在线 | 中文字幕网站 | 亚洲黄色在线播放 | 超碰人人91 | 国产精品综合av一区二区国产馆 | 欧美一区二区在线 | 中文字幕色婷婷在线视频 | 日韩亚洲在线视频 | 精品无人国产偷自产在线 | 国产三级香港三韩国三级 | 日韩在线观看视频免费 | 国产成人精品三级 | 五月婷婷导航 | www.色五月| 国产精品久久一区二区三区不卡 | 亚州精品在线视频 | 黄色三级免费 | 日本黄色大片免费看 | 日韩在线色| 91高清免费观看 | 国产专区在线视频 | 亚洲免费a | 在线国产黄色 | 亚洲国产播放 | 外国av网 | 免费观看黄色12片一级视频 | 97网| 超碰在线97观看 | 一区二区三区在线免费观看视频 | 一区二区视频在线看 | 日本激情动作片免费看 | 中文字幕av免费观看 | 亚洲成人蜜桃 | 丁香六月婷 | 在线观看免费黄色 | 又黄又爽又刺激视频 | 在线观看亚洲a | 2022中文字幕在线观看 | 日本在线观看一区二区 | 久久一区二| 欧美日韩在线网站 | 久草在线视频国产 | 免费97视频 | 国产精品久久久久久婷婷天堂 | 奇米网在线观看 | 色狠狠久久av五月综合 | 日韩中文字幕免费视频 | 天堂av在线7 | 中文在线天堂资源 | 少妇搡bbbb搡bbb搡忠贞 | 狠狠操操网 | 最近中文字幕免费观看 | 国产成人一区二区三区 | 亚洲午夜久久久影院 | 丁香婷婷综合激情五月色 | av免费播放| 亚洲欧美国产精品 | 亚洲成人黄色网址 | 亚州精品天堂中文字幕 | 精品视频一区在线 | 97色婷婷成人综合在线观看 | 国产在线精品一区二区不卡了 | 日韩在线免费小视频 | 免费看av片网站 | 91精品久久久久久久久久久久久 | 精品99免费 | 在线观看视频亚洲 | 日韩在线观看视频免费 | 久久久久久久久久国产精品 | 成人影音av | 日韩av不卡在线观看 | 91av视频在线免费观看 | 激情图片区 | 最新av在线播放 | 欧美日韩破处 | 色婷婷婷| 久久天天躁| 精品亚洲成人 | 2021国产精品 | 久草免费色站 | 五月天中文字幕 | 久久精品国产成人精品 | 久久久久亚洲天堂 | 成人在线视频观看 | 国产精品入口a级 | 色丁香婷婷 | av一本久道久久波多野结衣 | 国产高清av在线播放 | 久久久人人爽 | 久久久亚洲影院 | 日本三级吹潮在线 | 开心综合网 | 五月花婷婷 | 天天综合久久 | 国产一区二区三区午夜 | www夜夜| 91.精品高清在线观看 | 国产999| 亚洲精品久久久久久久蜜桃 | 一级片色播影院 | 中文字幕一区二区三区久久 | 男女激情网址 | 美女视频久久黄 | 天天搞夜夜骑 | 精品美女国产在线 | 久久综合中文字幕 | 国产日产精品一区二区三区四区 | 美女福利视频在线 | www.在线看片.com | 日本黄色大片免费 | 69久久夜色精品国产69 | 久久久久免费电影 | 青草视频在线播放 | 日本爱爱免费视频 | 欧美日韩在线视频一区二区 | 国产精品18久久久久久首页狼 | 精品人人爽 | 国产精品九九热 | 亚洲影院天堂 | 激情综合色图 | 精品专区一区二区 | 丝袜美腿亚洲综合 | 天天噜天天色 | 国产综合视频在线观看 | 国产成人在线免费观看 | 久久99免费| 六月丁香激情综合 | 国产精品久久久久久影院 | 97香蕉久久国产在线观看 | 在线观看日韩精品 | 狠狠地操 | 欧美日韩视频在线观看一区二区 | 日韩手机在线观看 | 国产天天综合 | 五月婷丁香 | 久久久久久高潮国产精品视 | 日韩中文字幕第一页 | 久久精品一区二区三区视频 | 日韩av影视在线观看 | 最近中文字幕国语免费av | 成人影片免费 | 久久99视频 | 婷婷久久丁香 | 天天综合网 天天综合色 | 丁香影院在线 | va视频在线观看 | 免费观看高清 | 在线v片免费观看视频 | 久久久久久免费 | 激情网婷婷 | 国产精品videossex国产高清 | 一区二区不卡 | 亚洲精品在线视频观看 | 日韩网站在线观看 | 成人午夜黄色影院 | 久久久久久高潮国产精品视 | 在线精品亚洲一区二区 | 亚洲视频资源在线 | 久久午夜鲁丝片 | 日韩区在线观看 | 欧美伦理一区二区三区 | 欧美日韩天堂 | www狠狠 | 久久综合狠狠狠色97 | 色中色亚洲 | 精品国产一区二区三区日日嗨 | 国产精品久久久久久模特 | 亚洲国产网站 | 久久免费精彩视频 | 国产精品中文久久久久久久 | 成人在线超碰 | 成人网页在线免费观看 | 欧美日一级片 | 玖玖在线免费视频 | 91大神精品视频在线观看 | 色片网站在线观看 | 国产精品99久久久久久小说 | 99精品系列 | 久久国产视频网站 | 欧美精品久久久久a | 在线激情网 | 天天干天天操天天做 | 久久久久久久毛片 | 日韩在线欧美在线 | 国产日本三级 | 日本黄色免费观看 | 国产成a人亚洲精v品在线观看 | 中文字幕4| 夜夜夜夜操 | 欧美日韩国内在线 | 免费看国产黄色 | 欧美一区免费观看 | 免费网站在线观看成人 | 麻豆91在线播放 | 久草99 | 亚洲黄色片在线 | 999视频精品| 天天拍天天爽 | 天天色综合天天 | 天天做日日爱夜夜爽 | 国产小视频免费观看 | 九色91福利 | 国产白浆在线观看 | 亚洲91在线| 日韩女同一区二区三区在线观看 | 日韩剧 | 色综合久久精品 | 日韩网| 久久麻豆精品 | 亚洲成免费 | 亚州激情视频 | 天天综合网天天综合色 | 99亚洲精品 | 国产 色| 欧美作爱视频 | 成人在线视频一区 | 91原创在线观看 | 免费精品视频在线 | 日韩黄色影院 | 免费av大全 | 久久黄色影院 | 国产精品免费视频一区二区 | 91九色成人 | 91mv.cool在线观看 | 国产一区二区三区免费在线 | 亚洲人天堂 | 97超碰站 | 啪啪凸凸| 国产很黄很色的视频 | 青青视频一区 | 国产精品久久久久久模特 | 国产欧美中文字幕 | 免费福利视频导航 | 国产97色 | 亚洲精选99 | 九九久久影视 | 午夜精品剧场 | 天天想夜夜操 | 免费看黄在线观看 | 国产亚洲人成网站在线观看 | 欧美性极品xxxx做受 | 在线免费观看欧美日韩 | 五月亚洲 | 色婷丁香| 超碰com| 国产123av| 久久影院亚洲 | 在线观看视频97 | 狠狠色噜噜狠狠狠狠 | 一二三久久久 | 91久久国产综合精品女同国语 | 一区二区三区日韩精品 | 成人黄色大片在线免费观看 | 久久久久久久久精 | 亚洲精品系列 | 天天综合婷婷 | 国产亚洲精品免费 | 久久毛片视频 | 欧美午夜激情网 | 激情五月婷婷综合 | 99精品久久久久久久 | 久久久久久久久久亚洲精品 | 在线a视频| japanese黑人亚洲人4k | 久久在线免费观看视频 | 91精品无人成人www | 一区二区亚洲精品 | 久久精品3 | 免费试看一区 | 午夜一级免费电影 | 天天射成人 | 欧美日韩91 | a黄色大片 | 五月婷婷在线播放 | av网站在线免费观看 | 五月激情综合婷婷 | 婷婷伊人网 | 91.dizhi永久地址最新 | 亚洲精品久久激情国产片 | 最近中文字幕大全中文字幕免费 | 人人干狠狠干 | 丁香午夜婷婷 | 9999精品免费视频 | 精品一区二区电影 | 日本精品视频一区二区 | 麻豆视频免费入口 | 日韩精品欧美视频 | av片子在线观看 | 黄色免费电影网站 | 亚洲国产成人高清精品 | 中文字幕在线观看网址 | 国产高清不卡一区二区三区 | 午夜视频在线观看一区二区 | 狠狠狠色丁香婷婷综合激情 | 久久精品视频在线观看 | 精品久久久久国产 | 成人丝袜 | 成人小视频在线 | 久久亚洲综合国产精品99麻豆的功能介绍 | 国产精品第2页 | 久久99精品久久久久久清纯直播 | 国产一二三四在线观看视频 | 999久久久免费精品国产 | 久久久久久在线观看 | 婷婷四房综合激情五月 | 国产精品中文字幕在线 | 国产日韩欧美在线播放 | 亚洲精品9 | 私人av| 91成人精品在线 | 色狠狠综合 | 九九爱免费视频在线观看 | 国产vs久久| 国产视频每日更新 | 日韩欧美亚州 | 91麻豆产精品久久久久久 | 中文字幕丝袜 | av网站免费在线 | 免费视频久久久久久久 | 999日韩 | 91天天操 | av中文字幕电影 | 最新日韩电影 | 成人 亚洲 欧美 | 亚洲国产中文字幕在线视频综合 | av网站有哪些 | 国产色在线,com | 高清av免费看 | 91av资源网| 一区二区三区免费在线播放 | 亚洲少妇自拍 | 在线看污网站 | 亚洲视频在线观看免费 | 天天·日日日干 | 色射色| 99精品国产成人一区二区 | 亚洲精品视频在线观看免费视频 | 亚洲精品视频www | av福利在线免费观看 | 欧美性猛片 | 日本午夜在线观看 | 国产a精品 | 精品欧美日韩 | 热精品 | 精品一区二区av | 欧美一区二区三区四区夜夜大片 | 亚在线播放中文视频 | 91毛片视频 | 在线观看理论 | 西西444www大胆高清图片 | 国产免费亚洲高清 | 亚洲另类人人澡 | 国产一级淫片免费看 | 综合天堂av久久久久久久 | 中文字幕观看av | 色视频网址 | 激情综合网在线观看 | 午夜成人免费影院 | 五月婷婷六月丁香 | 97国产情侣爱久久免费观看 | 国产精品久久久久永久免费观看 | 99久久这里有精品 | 91精品导航| 欧美成人黄色 | 在线国产能看的 | www.天天射.com | 久草在线视频在线 | 久久99久久99精品中文字幕 | 亚洲闷骚少妇在线观看网站 | 伊人网综合在线观看 | 婷婷激情综合 | 韩国精品视频在线观看 | 国产亚洲精品久久19p | 国产在线国偷精品产拍免费yy | 性色av免费观看 | 国产成人精品亚洲a | 国产一线天在线观看 | 五月婷婷在线视频观看 | 久久久黄色免费网站 | 国产精品一区二区三区视频免费 | 国内视频一区二区 | 超碰在线免费97 | 夜夜操网 | 中文字幕精 | 人人狠狠综合久久亚洲 | 美女天天操| 久久高清毛片 | 久久久电影网站 | 99热在线免费观看 | 亚洲2019精品 | 一本之道乱码区 | 97电影网手机版 | www.夜色.com| 伊人亚洲综合 | 欧美视频99 | 久久久影视| 毛片网在线观看 | 久久亚洲二区 | 97超级碰 | 一区二区 不卡 | 在线免费观看黄色大片 | 7777精品伊人久久久大香线蕉 | 国产精品一区二区久久国产 | 99精品国产成人一区二区 | 日韩中文免费视频 | 婷婷亚洲激情 | 中文av在线天堂 | 亚洲精品免费观看视频 | 国产免费一区二区三区网站免费 | 91精品在线观看视频 | 色噜噜狠狠狠狠色综合 | 国产成人精品一区二区三区福利 | 国产高清精品在线观看 | 97精品视频在线播放 | 精品久久精品 | 日本三级不卡 | 欧美激情视频一区 | 在线播放精品一区二区三区 | 91桃色在线播放 | 国产手机视频在线 | 国产精品 欧美 日韩 | 又黄又刺激视频 | 日韩av电影免费观看 | av一区在线播放 | 欧美激情精品久久久久 | 六月激情| 成年人网站免费观看 | av免费网站在线观看 | 日韩欧美高清一区二区三区 | 91网在线观看 | 色婷婷丁香 | 一级片黄色片网站 | 日韩区欧美久久久无人区 | 丁香花在线观看视频在线 | 日本护士三级少妇三级999 | 亚洲精品美女久久久久 | 久久成人18免费网站 | 波多野结衣视频一区 | 特级免费毛片 | 顶级bbw搡bbbb搡bbbb | 97色资源 | 亚洲动漫在线观看 | 99国产精品 | 91片黄在线观看动漫 | 涩涩色亚洲一区 | 国产69久久久欧美一级 | 国产婷婷精品av在线 | 视频一区在线播放 | 狠狠干婷婷色 | 成人一区二区在线 | 国产69精品久久久久99 | 久久99国产精品视频 | 99在线免费视频 | 中文字幕国产精品一区二区 | 日韩欧美在线观看 | 中文字幕久久精品 | 亚洲电影黄色 | 成人不用播放器 | 欧美久久久久久久 | 国产视频二区三区 | 亚洲精品国精品久久99热 | 久久久久久高潮国产精品视 | 91精品综合| 伊人色综合网 | 欧美巨大荫蒂茸毛毛人妖 | 日韩在线免费不卡 | 日韩视频在线不卡 | 日本视频不卡 | 黄在线免费看 | www.伊人网 | 成年人国产精品 | 成人动漫视频在线 | 九九久久久久99精品 | 不卡精品视频 | 亚洲毛片视频 | 久久午夜剧场 | 国产精品美女久久久久久免费 | 日韩一区二区三区免费视频 | 国产一级二级在线观看 | 日本精品在线 | 亚洲 欧美 日韩 综合 | 四虎精品成人免费网站 | 午夜精品久久久久99热app | 国产香蕉视频在线观看 | 日韩色av色资源 | 久久精品视频在线播放 | www久久久| 日韩精品中文字幕久久臀 | 久久国产电影院 | 中文字幕在线观看一区二区 | 国产精品无 | 91在线播放视频 | 日韩国产欧美在线视频 | 日韩三级中文字幕 | 亚洲视频在线观看免费 | 欧美五月婷婷 | 国产精品手机在线 | 日批视频在线观看免费 | 五月婷婷中文网 | 在线国产中文字幕 | 亚洲va欧美va国产va黑人 | 成人av片在线观看 | 天天射天天射天天射 | 精品少妇一区二区三区在线 | av电影免费在线看 | 久久久国产一区二区三区四区小说 | 在线观看黄 | 韩国av三级 | 婷婷国产一区二区三区 | 国产精品毛片一区视频播不卡 | 高清一区二区三区 | 韩日成人av| 日韩欧美视频在线免费观看 | 国产日本在线观看 | 成人国产一区 | 91精品国产高清自在线观看 | 国内久久视频 | 91视频久久久久久 | 天天操夜夜叫 | 婷婷在线精品视频 | 免费a级黄色毛片 | 国产视频一区在线播放 | 狠色狠色综合久久 | 日韩国产欧美视频 | 精品一区精品二区高清 | 777xxx欧美 | 国产91全国探花系列在线播放 | 日韩中文字幕91 | 欧美一级乱黄 | 久久精品99视频 | 国产91学生粉嫩喷水 | 国产一区二区在线精品 | 亚洲午夜av电影 | 亚洲视频免费在线观看 | 久久五月婷婷综合 | 97色在线视频 | 久久国产精品二国产精品中国洋人 | 日本最新一区二区三区 | 91在线一区二区 | 久草在线资源观看 | 五月婷婷欧美 | 成人亚洲综合 | 久久午夜电影网 | 国产专区视频在线观看 | 久久精品国产一区 | 91传媒91久久久 | 久久精品国产一区二区电影 | 99精品国产亚洲 | 国产一级免费观看 | 国产精品99久久久精品免费观看 | 国精产品一二三线999 | 射综合网 | 狠狠色香婷婷久久亚洲精品 | 久草视频看看 | 免费观看国产成人 | 69精品人人人人 | 亚洲激情在线播放 | 91最新视频 | 日韩精品 在线视频 | av丝袜在线 | 五月综合网站 | 亚洲精品国产精品久久99热 | 色视频在线免费 | 三级av网 | 日韩黄色大片在线观看 | 97品白浆高清久久久久久 | 亚洲精品乱码久久久一二三 | 欧美精品乱码久久久久久按摩 | 国产成年免费视频 | 天天艹天天干天天 | 一区二区视频播放 | 色噜噜日韩精品一区二区三区视频 | 黄色av电影一级片 | 一区二区理论片 | 97在线免费观看视频 | 久久网站最新地址 | 亚洲欧美日韩国产精品一区午夜 | 最近免费中文字幕 | av福利在线播放 | 狠狠色噜噜狠狠狠狠2021天天 | 欧美日韩在线观看一区二区 | 婷婷四房综合激情五月 | 91色国产| 可以免费看av| 亚洲精品18日本一区app | 伊人春色电影网 | 欧美日韩一区久久 | 黄色免费av| 99re中文字幕 | 亚洲在线精品视频 | 日本久久不卡视频 | 欧美日高清视频 | 欧美人牲| 久久激情婷婷 | av丝袜在线 | 日韩网站在线看片你懂的 | 人人射人人射 | 天天爱天天操 | 婷婷在线观看视频 | 亚洲欧美在线观看视频 | 国产高清一级 | 中文字幕在线观看视频一区 | 欧美大片在线看免费观看 | 中文字幕婷婷 | 婷婷精品国产欧美精品亚洲人人爽 | 99re视频在线观看 | 五月天激情综合 | 91精品久久久久久综合五月天 | 91最新国产 | 高清免费在线视频 | 久久久久久高潮国产精品视 | 国产精久久久久久妇女av | 91在线国内视频 | 丝袜美女在线观看 | www.com操| 97超碰人人模人人人爽人人爱 | 婷婷网址| 9ⅰ精品久久久久久久久中文字幕 | 中文字幕资源在线观看 | 成人免费在线观看电影 | 精品国产一区二区三区日日嗨 | www.久久色.com | 久久综合久久综合这里只有精品 | 成人一区在线观看 | 久久av黄色 | 国产一级电影网 | 国产麻豆剧传媒免费观看 | 激情五月在线观看 | 国产专区视频在线 | 久久综合欧美精品亚洲一区 | 欧美精品一区二区免费 | 亚洲黄色三级 | 欧美亚洲三级 | 国产一级黄 | 色视频网站在线观看一=区 a视频免费在线观看 | 亚洲区另类春色综合小说校园片 | 亚洲国产网址 | 特级大胆西西4444www | 在线观看视频你懂的 | 天堂网中文在线 | 精品国产一区二区三区噜噜噜 | 日韩不卡高清 | 日韩一区二区三区在线看 | 99热这里只有精品免费 | 成人h动漫精品一区二 | 亚洲精品视频免费在线观看 | 亚洲在线看 | 丁香久久激情 | 永久免费精品视频 | 国产一级做a | 少妇bbbb搡bbbb桶| 国产一区二区三区在线免费观看 | 97成人资源| 精品久久久久一区二区国产 | 欧美午夜性生活 | 岛国av在线免费 | 91福利影院在线观看 | 久久久久久久久影视 | 久久精品国产亚洲aⅴ | 天天干天天搞天天射 | 99精彩视频| 亚洲九九九在线观看 | 在线观看黄网站 | 911av视频| 丁香综合 | 日韩精品第一区 | 国产综合香蕉五月婷在线 | 日本一区二区不卡高清 | 免费观看一级视频 | 日韩视频在线不卡 | 99r在线 | av天天色 | 久久久污 | 黄色免费av | 女女av在线 | 手机av看片| 91精品久久久久久综合乱菊 | 日韩激情视频在线观看 | 中文字幕精品一区久久久久 | 黄色在线小网站 | 日本不卡久久 | 成人毛片一区二区三区 | 国产不卡免费视频 | 免费a视频在线观看 | 91精品在线观看视频 | 91豆麻精品91久久久久久 | 五月天久久综合网 | 韩国av免费在线观看 | 天天操天天草 | 国产精品一区在线观看你懂的 | 欧美性护士 | 日本精品久久久一区二区三区 | 久久久久久免费网 | 色激情在线 | 午夜精品电影一区二区在线 | www.久久91| 久草在线视频免费资源观看 | 国产成人三级一区二区在线观看一 | 九九热在线视频 | 国产不卡免费 | 久久国产视屏 | 99热国产精品 | 一本一本久久a久久精品综合 | 一区二区三区在线免费观看视频 | 久久久久中文字幕 | 午夜美女av | 91九色在线视频观看 | 97超碰在线久草超碰在线观看 | 中文字幕在线观看91 | 精品亚洲成人 | 午夜精品视频一区 | 久久久国产一区二区三区四区小说 | 国产视频一区二区在线 | 亚洲2019精品 | 久久久精品视频网站 | 色吊丝在线永久观看最新版本 | 最近日本韩国中文字幕 | 国产精品午夜久久久久久99热 | 99这里只有精品视频 | 久久国内视频 | 欧美久久久 | 成人网在线免费视频 | 久久99国产精品二区护士 | 国产麻豆精品传媒av国产下载 | 狠狠色丁香久久综合网 | 欧美久久久久久久久 | 五月婷婷一区二区三区 | www.夜夜爱 | 黄色精品久久久 | 亚洲禁18久人片 | 操久在线 | 久草在线高清视频 | 国产一区在线免费观看视频 | 久久久久麻豆 | 日韩欧美综合在线视频 | 欧美日韩精品在线 | 国产伦精品一区二区三区… | 涩涩伊人 | 精品在线观看一区二区 | 丁香六月天 | 欧美一区二区三区不卡 | 日韩精品专区在线影院重磅 | 手机看片中文字幕 | 99在线热播| 99中文字幕在线观看 | 毛片无卡免费无播放器 | 四虎8848免费高清在线观看 | 永久免费精品视频 | 久久综合九色综合久久久精品综合 | 天天色天天干天天 | 国产成人在线网站 | 精品一二三四在线 | 91视频3p| 91片在线观看 | 超碰在线人人 | 久久手机免费视频 | 日韩久久久久久 | 人人爽人人爽 | 久久艹在线 | 在线不卡视频 | 国产精品尤物 | 麻豆视频一区二区 | 97电影院网 | 日本中文字幕在线免费观看 | 色99色| 91porny九色在线播放 | 探花视频在线观看+在线播放 | 亚洲电影图片小说 | 日本精品中文字幕 | 国产乱码精品一区二区三区介绍 | 美女视频黄免费的 | 亚洲综合一区二区精品导航 | 亚洲国产成人av网 | 亚洲一级二级 | 国产一区电影在线观看 | 三级视频国产 | 久久久国产精品网站 | 91成品人影院 | 国产又粗又长的视频 | 韩国在线视频一区 | 黄色录像av| 91成人网页版 | 91麻豆文化传媒在线观看 | 日韩激情精品 | 黄色三级视频片 | 91成年人视频 | 99视频偷窥在线精品国自产拍 | 一区二区三区日韩在线观看 | www,黄视频| 欧美极品一区二区三区 | 久久精品欧美视频 | 一级a性色生活片久久毛片波多野 | 免费看黄色小说的网站 | 人人爽人人爽人人爽 | 国产成人免费 | 免费亚洲一区二区 | a v在线视频 | 日韩高清在线看 | 超碰免费在线公开 | 国产特级毛片aaaaaaa高清 | 亚洲国内精品视频 | 免费观看成人av | 97超在线| 日日操操 | 不卡电影免费在线播放一区 | 精品国产一区二区三区日日嗨 | 亚洲欧美一区二区三区孕妇写真 | 亚洲va欧美va人人爽春色影视 | 久久国产精品二国产精品中国洋人 | 精品一区二区在线免费观看 | 午夜电影久久久 | 在线观看精品视频 | 在线亚洲成人 | 欧美专区日韩专区 | 久久久久久久久久久成人 | 色婷婷久久 | 久久人人爽人人爽人人片av软件 | 男女啪啪视屏 | 久草精品电影 | 欧美一区二区在线免费观看 | a视频免费在线观看 | 日韩精品久久一区二区三区 | 中文字幕精品一区二区精品 | 国产福利一区二区三区在线观看 | 国产精品免费看久久久8精臀av | 在线天堂日本 | 中国一级片免费看 | 日韩三级在线 | 99精品偷拍视频一区二区三区 | www日韩视频 | 国产日产精品久久久久快鸭 | 久久久午夜电影 | 国产成人精品久久亚洲高清不卡 | 99精品国产一区二区三区麻豆 | 免费毛片一区二区三区久久久 | 国产xxxxx在线观看 | 五月婷婷丁香六月 | 午夜久久久久久久久久久 | 久久精品专区 | 成年人在线免费看 | 亚洲六月丁香色婷婷综合久久 | 91精品在线播放 | 婷婷国产在线 | 亚洲精品乱码久久久久v最新版 | 草莓视频在线观看免费观看 | 激情www| 日日草视频 | 91丝袜美腿| 97色se| 日韩一区二区久久 | 日日夜夜精品视频 | 欧美日韩中文在线视频 | 免费毛片aaaaaa| 少妇bbbb搡bbbb桶 | 97在线观| 色综合天天综合在线视频 | 高清av免费看 | 国产精品18久久久久vr手机版特色 | 午夜视频在线观看一区二区三区 | 久久试看| 天天看天天干 | 天天在线视频色 | 在线播放精品一区二区三区 | 国内少妇自拍视频一区 | 五月综合激情婷婷 | 国产在线一卡 | 久久成人国产 | 亚州中文av| 久久久九九 | 人人舔人人干 | 久久久精品福利视频 | 日韩精品欧美专区 | 午夜123 | 欧美日韩国产精品一区二区 | 亚洲精品短视频 | 一区二区三区四区久久 | 日韩另类在线 | 国产精品网站一区二区三区 | 美女福利视频网 | 国产精品毛片一区二区三区 | 国产成人三级在线观看 | 免费91麻豆精品国产自产在线观看 | 伊人宗合网 | 黄av免费在线观看 | 香蕉视频在线免费看 | 国产黄色片免费观看 | 国产精品ⅴa有声小说 | 五月婷婷综合网 | 久久99免费观看 | 色综合天天在线 | 狠狠色噜噜狠狠狠合久 | 狠狠操狠狠干天天操 | 国产高清一区二区 | 久久综合亚洲鲁鲁五月久久 | 91漂亮少妇露脸在线播放 | 国产精品久久久久久69 | 人人草在线视频 | 98福利在线| 久久久久久久久亚洲精品 | 在线看成人av | 黄色成年片 | 91在线视频观看免费 | 精品一区二区免费在线观看 | 成人久久18免费网站图片 | 久久艹在线观看 | 欧美激情综合五月色丁香 | 欧美日韩国产精品爽爽 | 99欧美精品| 天天操天天射天天爽 | 精品国产一区二区三区日日嗨 | 日韩欧美国产免费播放 | 国产中文视 | 日韩高清一二三区 | 九九av| 黄色av网站在线观看免费 | 久久黄色影视 | 亚洲理论在线观看 | av免费线看 | 国产在线欧美 | 九九久久久久久久久激情 | 91精品久久久久久粉嫩 | 久草在线免费资源 | 免费看高清毛片 | 精品亚洲一区二区三区 | 色婷婷精品大在线视频 | 国产精品区二区三区日本 | 国产一级免费播放 | 久久黄色小说视频 | 欧美a免费 | 亚洲一级片在线看 | 狠狠色伊人亚洲综合网站色 | 国产又黄又爽无遮挡 | 亚洲高清视频在线观看免费 | 一级片免费观看 | 69久久久久久久 | 亚洲人天堂 | 久久字幕 | 视频一区二区免费 | 蜜桃视频日韩 | 日韩欧美视频 | 亚洲成成品网站 | 国产日韩视频在线观看 | 色小说av | 四虎在线免费观看视频 | 久久精品免费播放 | 午夜av一区二区三区 | 国产精品网在线观看 | 日韩精品一区二区三区不卡 | 中文字幕在线视频一区二区三区 | 欧美一级艳片视频免费观看 | 免费看国产曰批40分钟 | 六月丁香激情网 | 久久成年视频 | 成人在线电影观看 | 国产又粗又猛又黄又爽视频 | 91av视频在线观看免费 | 青草视频免费观看 | 91亚洲精品在线 | 亚洲激情国产精品 | 精品国产大片 | 欧美日韩在线观看一区二区三区 | 日韩高清不卡在线 | 中文字幕色播 | 天天鲁一鲁摸一摸爽一爽 | 久久精国产 | 日本最新中文字幕 | 成人国产精品电影 | 日本视频精品 | 美女视频是黄的免费观看 | 91高清免费观看 | 国产小视频你懂的在线 | 97超碰在线免费观看 |