精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

[FFH]標準系統HDF平臺驅動(一)——ADC驅動適配

系統 OpenHarmony
ADC(Analog to Digital Converter),即模擬-數字轉換器,是一種將模擬信號轉換成對應數字信號的設備。

??想了解更多關于開源的內容,請訪問:??

??51CTO 開源基礎軟件社區??

??https://ost.51cto.com??

前言

之前在研究HDF驅動過程中,發現對于標準系統,HDF已經提供了統一的一套Linux驅動適配,例如使用開發板外設gpio,pwm等,都可以直接使用HDF提供的平臺設備接口適配linux內核代碼。然后在使用九聯UnionPi-Tiger開發板HDF平臺接口時,發現開發板并沒有對ADC的HDF進行適配,然后發現其他標準系統開發板也沒有將ADC的HDF驅動適配到開發板上,但是又能在OpenHarmony源碼中找到HDF適配linux內核的ADC驅動代碼,所以嘗試自己進行一波驅動適配,適配完后也是成功能正常調用HDF平臺提供的統一ADC驅動接口。

參考

??drivers_adapter_khdf_linux??平臺驅動開發——ADC
驅動子系統

前述知識

ADC

  1. 簡介:
    ADC(Analog to Digital Converter),即模擬-數字轉換器,是一種將模擬信號轉換成對應數字信號的設備。
  2. 基本概念:
  • 分辨率:即每個采樣數據精度,用多少位數字來表示采集到一個模擬量,分辨率越高就能采集越精確的數據。常用分辨率:8bit、10bit、12bit。
  • 精度:即模擬量轉換成數字量的精確程度。
  • 采樣速率:即每秒對ADC采樣的次數。

Linux IIO子系統

  • IIO(Industrial I/O) 子系統旨在為某種意義上是模數或數模轉換器 (ADC,DAC) 的設備提供支持,Linux內核通過IIO框架把模數轉換的功能集合在一起,包括加速度計,磁力計,陀螺儀,壓力傳感器, 濕度傳感器,溫度傳感器等都屬于IIO系列器件。
  • IIO作為字符設備暴露給用戶空間,用戶可直接在設備樹中使能該功能,與IIO驅動程序交互獲取采樣值。

可以動手做一個小嘗試,電腦連接開發板進入開發板終端,進入/sys/bus/iio/iio:device,表示傳感器及通道,對于UnionPi_Tiger開發板,可以看到開發板提供in_voltage0_raw-in_voltage7_raw 8個ADC采樣通道。

#創作者激勵# [FFH]標準系統HDF平臺驅動(一)——ADC驅動適配-開源基礎軟件社區

讀取ADC采樣值,使用軟件寫入start的方式,每次觸發一次采樣:
執行cat /sys/bus/iio/devices/iio:device0/xxx_raw即可獲取對于通道的采值。

例如,查看數據手冊,可以知道開發板外設對于的通道為2和3。

#創作者激勵# [FFH]標準系統HDF平臺驅動(一)——ADC驅動適配-開源基礎軟件社區

所以我們讀取開發板的ADC外設可以通過如下命令:

#創作者激勵# [FFH]標準系統HDF平臺驅動(一)——ADC驅動適配-開源基礎軟件社區

Linux內核部署OpenHarmony驅動框架

OpenHarmony平臺驅動(Platform Driver),即平臺設備(Platform Device)驅動,為系統及外設驅動提供訪問接口。這里的平臺設備,泛指I2C/UART等總線、以及GPIO/RTC等特定硬件資源。平臺驅動框架是OpenHarmony驅動框架的重要組成部分,它基于HDF驅動框架、操作系統適配層以及驅動配置管理機制,為各類平臺設備驅動的實現提供標準模型。平臺驅動框架為外設提供了標準的平臺設備訪問接口,使其不必關注具體硬件;同時為平臺設備驅動提供統一的適配接口,使其只關注自身硬件的控制。

對于OpenHarmony標準系統來說,內核使用的是統一的Linux系統內核,這也就是說對于大部分的一些驅動模型,驅動接口,都可以使用統一的一套框架進行適配,也就是在Linux內核部署OpenHarmony的HDF驅動子系統,這樣可以提供歸一化的驅動平臺底座,做到一次開發,多系統部署。在OpenHarmony源碼中存放對于驅動子系統適配linux內核的代碼和編譯腳本,具體路徑為drivers/hdf_core/adapter/khdf/linux,提供了各種驅動模型的適配例如音頻驅動模型,顯示驅動模型,以及平臺設備接口適配linux內核代碼,例如gpio接口,adc接口,倉庫鏈接:https://gitee.com/openharmony/drivers_adapter_khdf_linux。

ADC模塊運作機制:統一服務模式

在HDF框架中,同類型設備對象較多時(可能同時存在十幾個同類型配置器),若采用獨立服務模式,則需要配置更多的設備節點,且相關服務會占據更多的內存資源。相反,采用統一服務模式可以使用一個設備服務作為管理器,統一處理所有同類型對象的外部訪問(這會在配置文件中有所體現),實現便捷管理和節約資源的目的。ADC模塊即采用統一服務模式。

#創作者激勵# [FFH]標準系統HDF平臺驅動(一)——ADC驅動適配-開源基礎軟件社區


在統一模式下,所有的控制器都被核心層統一管理,并由核心層統一發布一個服務供接口層,因此這種模式下驅動無需再為每個控制器發布服務。

驅動適配過程

一、開啟HDF_PLATFORM_ADC模塊控制宏

HDF的驅動一般都由對應的模塊控制宏進行控制編譯,默認是不使能編譯的(可以在對于的Kconfig文件查看),產品需要手動開啟模塊控制宏使之參與到產品編譯,這樣做的好處就是構建彈性化的框架能力。對于unionpi_tiger開發板,對于的配置文件位于device/board/unionman/unionpi_tiger/kernel/build/unionpi_tiger_standard_defconfig,可以看到默認情況下,對于該開發板是不提供ADC的HDF驅動能力的,因為還沒有做好對應功能的適配,也就是不能直接使用平臺提供的統一驅動接口。

#創作者激勵# [FFH]標準系統HDF平臺驅動(一)——ADC驅動適配-開源基礎軟件社區

在這里我們將CONFIG_DRIVERS_HDF_PLATFORM_ADC的值配置為y,開啟對應驅動能力,追述到編譯的源頭,其實是使能了drivers/hdf_core/adapter/khdf/linux/platform/adc目錄下的makefile文件參與編譯。

include drivers/hdf/khdf/platform/platform.mk

obj-y += $(HDF_PLATFORM_FRAMEWORKS_ROOT)/src/adc/adc_core.o \
$(HDF_PLATFORM_FRAMEWORKS_ROOT)/src/adc/adc_if.o \
./adc_iio_adapter.o

正好可以對應上ADC模塊各分層:

  • 接口層(adc_if):提供打開設備,寫入讀取數據,關閉設備的能力。
  • 核心層(adc_core):主要負責服務綁定、初始化以及釋放管理器,并提供添加、刪除以及獲取控制器的能力。
  • 適配層(adc_iio_adapter):由驅動適配者實現與硬件相關的具體功能,如控制器的初始化等。

二、接口說明及屬性配置

根據官方文檔,ADC模塊適配必選的三個環節是實例化驅動入口,配置屬性文件,以及實例化核心層接口函數。

  1. 實例化驅動入口
  • 實例化HdfDriverEntry結構體成員。
  • 調用HDF_INIT將HdfDriverEntry實例化對象注冊到HDF框架中。
  1. 配置屬性文件
  • 在device_info.hcs文件中添加deviceNode描述。
  • 【可選】添加adc_config.hcs器件屬性文件。
  1. 實例化核心層接口函數
  • 初始化AdcDevice成員。
  • 實例化AdcDevice成員AdcMethod。

實例化驅動入口以及實例化核心層接口函數已經實現,對于其中的一些具體實現原理,可以到drivers/hdf_core/adapter/khdf/linux/platform/adc/adc_iio_adapter.c的驅動適配層代碼進行查看,本質上也是對Linux IIO子系統的一些應用進行操作,對于他的實現過程,我也畫了一張圖進行總結,可能需要花點心思才能搞懂其中的邏輯,我在畫這種圖的時候就感受到了,可能也有不完整或不對的地方,歡迎指正。

#創作者激勵# [FFH]標準系統HDF平臺驅動(一)——ADC驅動適配-開源基礎軟件社區

核心層和適配層的代碼已經實現,我們需要做的是對屬性文件進行配置。

1、添加deviceNode描述

路徑vendor/unionman/unionpi_tiger/hdf_config/khdf/device_info/device_info.hcs,統一服務模式的特點是device_info.hcs文件中第一個設備節點必須為ADC管理器,其各項參數如下設置:

成員名

moduleName

固定為HDF_PLATFORM_ADC_MANAGER

serviceName

固定為HDF_PLATFORM_ADC_MANAGER

policy

配置為2,對外發布服務

deviceMatchAttr

沒有使用,可忽略

從第二個節點開始配置具體ADC控制器信息,第一個節點并不表示某一路ADC控制器,而是代表一個資源性質設備,用于描述一類ADC控制器的信息。這里一個ADC設備,如有多個設備,則需要在device_info.hcs文件增加deviceNode信息,以及在adc_config文件中增加對應的器件屬性。

device_adc :: device {
device0 :: deviceNode {
policy = 2;
priority = 60;
permission = 0644;
moduleName = "HDF_PLATFORM_ADC_MANAGER";
serviceName = "HDF_PLATFORM_ADC_MANAGER";
}
device1 :: deviceNode {
policy = 0;
priority = 65;
permission = 0644;
moduleName = "linux_adc_adapter";
deviceMatchAttr = "linux_adc_adapter";
}
}

2、配置器件適配器屬性

新增a311d_adc_config.hcs配置文件,在vendor/unionman/unionpi_tiger/hdf_config/khdf/platform路徑下。

root {
platform {
adc_config {
match_attr = "linux_adc_adapter";//與deviceMatchAttr的值一致
template adc_device {
channelNum = 2; //ADC通道數量
driver_channel0_name = ""; //通道0在linux文件系統路徑
driver_channel1_name = ""; //通道1在linux文件系統路徑
deviceNum = 0; //設備號標識
scanMode = 0; //掃描模式(必要,但實際使用參數無意義)
rate = 1000; //轉換速率(必要,但實際使用參數無意義)
}

device_adc_0x0000 :: adc_device {
channelNum = 2;
deviceNum = 0;
driver_channel0_name = "/sys/bus/iio/devices/iio:device0/in_voltage2_raw";
driver_channel1_name = "/sys/bus/iio/devices/iio:device0/in_voltage3_raw";
}
}
}
}

對于參數的配置,可以對照適配層代碼進行理解。

#創作者激勵# [FFH]標準系統HDF平臺驅動(一)——ADC驅動適配-開源基礎軟件社區

配置完后必須在hdf.hcs文件中將其包含,否則配置文件無法生效。

#創作者激勵# [FFH]標準系統HDF平臺驅動(一)——ADC驅動適配-開源基礎軟件社區

需要注意的點:

  • 因為為統一服務模式,match_attr = "linux_adc_adapter"必須配置在驅動適配器配置外部,否則會找不到設備,這個在后面會解釋。并且這里的channelNum為通道總數,不是設備通道號。
  • driver_channelX_name需要根據通道號數量配置好每一個通道對于Linux的iio子系統對應通道路徑,上述有提到Tiger開發板有8個ADC通道,但實際上能用到的通道只有2,3,所以直接配置通道數為二即可,并將通道2,3分別映射到driver_channel0_name及driver_channel1_name上。
  • deviceNum為自定義的設備號,在調用開啟對應ADC設備時需要對應設備標識號。
  • scanMode和rate雖然在驅動沒有用到,但需要獲取到,都需要進行配置,值并無意義。

適配過程遇到的問題

配置文件中match_attr的位置

  • 統一服務模式與獨立服務模式的驅動配置模式是不一樣的,例如uart屬于獨立服務模式,每一個設備對象會獨立發布一個設備服務來處理外部訪問,需要為每一個設備單獨配置器件屬性,每個器件節點都需要一個match_attr進行匹配,代碼中體現為直接使用DeviceResourceGetIfaceInstance獲取drsOps方法獲取設備參數。
  • 而統一服務模式則使用一個設備服務作為管理器,統一處理所有同類型對象的外部訪問,驅動無需再為每個控制器發布服務,在代碼中的體現為統一服務模式需要宏??DEV_RES_NODE_FOR_EACH_CHILD_NODE(node, childNode)??? 遍歷、解析.hcs文件中的所有配置節點,而這也是通過外部的match_attr進行匹配,如果寫在器件內部,則無法匹配上,使用時會提示找不到設備,在遍歷時對每個節點再使用??DeviceResourceGetIfaceInstance??獲取drsOps方法獲取參數,二者區別訪問配置文件節點的深度問題。
    二者配置文件的差異,也在下面給大家放出來。

編譯問題

  1. 在修改.hcs配置文件時,經常遇到配置之后沒效果,那可能時hcs文件沒進行重新編譯,因為我修改完后生成的.hcb文件以及.o文件修改日期沒改變,所以每次修改hcs文件建議把生成的文件先刪除在刪除out進行全部重新編譯。
  2. 調試過程中有時候debug需要修改到核心層,適配層的代碼,而再次編譯后修改的代碼并沒有生效,這也是需要把原來生成的一些.o文件等刪除,再重新進行全量編譯。

后記

篇幅有限,為避免內容太亂,將適配完后對HDF平臺接口的使用放在了下一篇,下一篇將使用HDF提供的統一驅動接口驅動LM35溫度傳感器來驗證ADC驅動的適配結果。

??想了解更多關于開源的內容,請訪問:??

??51CTO 開源基礎軟件社區??

??https://ost.51cto.com??

責任編輯:jianghua 來源: 51CTO 開源基礎軟件社區
相關推薦

2023-03-21 18:06:49

ADC數字轉換器

2023-03-24 14:47:24

NAPI框架HDF框架

2023-09-14 15:49:42

PWM鴻蒙

2021-12-15 10:02:25

鴻蒙HarmonyOS應用

2022-08-08 19:35:37

HDF驅動開發鴻蒙

2021-11-30 14:52:41

鴻蒙HarmonyOS應用

2021-09-07 15:48:28

鴻蒙HarmonyOS應用

2023-09-13 15:33:57

I2C鴻蒙

2023-03-16 15:18:16

2022-02-16 15:55:21

驅動調用操作系統鴻蒙

2021-11-22 16:46:59

鴻蒙HarmonyOS應用

2023-09-06 15:35:14

2021-09-10 15:12:04

鴻蒙HarmonyOS應用

2023-09-06 15:27:22

ADC鴻蒙

2022-01-04 15:35:51

鴻蒙HarmonyOS應用

2022-09-06 15:46:52

speexdsp鴻蒙

2022-10-12 15:14:08

開機動畫鴻蒙

2021-12-15 15:30:38

鴻蒙HarmonyOS應用

2023-03-20 16:05:49

HDF傳感器驅動開發

2022-04-20 20:28:40

HDF 驅動框架鴻蒙操作系統
點贊
收藏

51CTO技術棧公眾號

欧美亚洲网站| 国内成人精品| 欧美日韩国产在线看| 日韩亚洲不卡在线| 国产福利资源在线| 亚洲在线免费| 日韩在线欧美在线国产在线| 国产精品一码二码三码在线| 亚洲另类欧美日韩| 99久热这里只有精品视频免费观看| 亚洲444eee在线观看| 秋霞久久久久久一区二区| 国产精品特级毛片一区二区三区| 一本不卡影院| 欧美成人精品激情在线观看 | 成人在线免费| 一级日本不卡的影视| 国产精品视频专区| 久久久精品人妻一区二区三区四| 在线亚洲a色| 日韩免费福利电影在线观看| 国产免费色视频| 亚洲欧洲视频在线观看| 国产在线一区二区综合免费视频| 91产国在线观看动作片喷水| 大尺度在线观看| 丁香久久综合| 日本精品一区二区三区高清| 欧美激情第一页在线观看| 92久久精品一区二区| 久久精品一区二区三区中文字幕 | 国产精品久久久久久久久久小说 | 日本精品在线免费观看| 免费欧美一区| 亚洲精品国产精品国自产在线 | 国产精品久久久久久久第一福利| 国产精品一区二| 国产日韩在线观看一区| 奇米精品一区二区三区在线观看| 18性欧美xxxⅹ性满足| 免看一级a毛片一片成人不卡| 久久一区91| 国产一区二区三区18| 天堂中文视频在线| 黄色污网站在线观看| 亚洲品质自拍视频网站| 亚洲午夜精品一区二区三区| 国产视频一区二区三| 日本伊人色综合网| 国产成人短视频| 99超碰在线观看| 亚洲免费影院| 日本国产精品视频| 中文字幕电影av| 欧美wwwww| 久久精品国产成人| 黄视频网站免费看| 欧美粗暴jizz性欧美20| 欧美区二区三区| 久久网中文字幕| 亚洲日产国产精品| 欧美怡春院一区二区三区| 国产成人免费看| 视频在线观看国产精品| 国产精品美女久久久久久免费| 337p粉嫩色噜噜噜大肥臀| 日本美女一区二区三区视频| 国产精品丝袜久久久久久不卡| 这里只有精品6| 国产在线精品一区二区夜色| 成人精品一二区| 黄色av免费观看| 337p粉嫩大胆色噜噜噜噜亚洲| 奇米精品在线| 日本美女在线中文版| 国产免费高清av| 日韩av影院| 国产亚洲精品久久| 国产精品夜夜夜爽阿娇| 欧美一区久久| 欧美一级淫片videoshd| 中文有码在线播放| 国内精品久久久久久久影视蜜臀| 欧美激情一区二区三区在线视频观看 | 视频在线一区| 亚洲国产中文字幕在线观看| 美女爆乳18禁www久久久久久 | 欧美午夜精品一区二区三区| 五月天激情播播| 手机在线观看av网站| 久久只精品国产| 色阁综合av| 污影院在线观看| 欧美日韩国产在线看| 无需播放器的av| 国产精品chinese在线观看| 亚洲色图狂野欧美| 国模无码国产精品视频| 国产毛片一区二区三区| 久久亚洲国产精品成人av秋霞| 免费一级片在线观看| 久久久精品五月天| 91久久久久久久久久久| 色就是色亚洲色图| 91小视频免费看| 亚洲三区在线| 男人av在线播放| 欧美乱妇23p| 一区二区不卡免费视频| 伊人久久大香线蕉精品组织观看| 2020久久国产精品| 国产成人精品亚洲精品色欲| 久久综合九色综合欧美就去吻| 一本—道久久a久久精品蜜桃| 国模精品视频| 欧美一级黄色片| 亚洲av无码国产精品麻豆天美| 欧美日韩亚洲三区| 国产日韩欧美另类| 国产一级在线| 精品人伦一区二区三区蜜桃免费| 交换做爰国语对白| 日韩在线亚洲| 日韩亚洲欧美成人| 国产又粗又猛又黄视频| 成人激情小说网站| 欧美一区二区三区综合| 素人啪啪色综合| 亚洲美女www午夜| 日韩欧美大片在线观看| 国产河南妇女毛片精品久久久 | 欧美1区2区视频| 国产欧美日韩免费| 在线激情免费视频| 亚洲免费三区一区二区| 在线观看国产中文字幕| 国产亚洲电影| 国产成人一区三区| 蜜桃视频在线入口www| 精品久久久久久久久久国产| 人妻少妇偷人精品久久久任期| 99久久夜色精品国产亚洲96 | 久久99深爱久久99精品| 欧美日韩一区在线视频| 一区二区乱码| 国产婷婷成人久久av免费高清| 日韩av黄色片| 成人国产精品免费观看视频| 国产精品久久久久7777| 91麻豆精品激情在线观看最新| 九九热最新视频//这里只有精品| www.色播.com| 亚洲已满18点击进入久久| 美国黄色一级视频| 国产日韩欧美一区二区三区在线观看| 国产九色91| 中文字幕一区久| 欧美日韩一区中文字幕| 亚洲精品一区二区三区影院忠贞| 日韩精品乱码免费| 水蜜桃亚洲精品| 另类一区二区| 久久国产精品影视| 欧美一级做性受免费大片免费| 亚洲成人一二三| 欧美一区二区三区成人精品| 99久久影视| 91天堂在线视频| 国产又色又爽又黄刺激在线视频| 精品国产伦一区二区三区观看方式| 国产精品7777| 国产在线日韩欧美| 国内少妇毛片视频| 免费成人高清在线视频| 美女国内精品自产拍在线播放| 亚洲av少妇一区二区在线观看| 亚洲国产日韩在线一区模特| 亚洲观看黄色网| 日韩电影一区二区三区四区| 中文字幕中文字幕一区三区| 9999久久久久| 国产成+人+综合+亚洲欧洲 | 色www免费视频| 欧美精品日韩| 免费看成人午夜电影| 日本成人一区二区| 亚洲天堂男人天堂| 国产又爽又黄免费软件| 亚洲午夜电影在线观看| 蜜乳av中文字幕| 国产精品影视在线| 黄色片久久久久| 欧美成人嫩草网站| 欧美日韩高清在线一区| 精品国产一区二区三区2021| 欧美自拍视频在线观看| 免费在线观看av网站| 日韩精品视频在线| 99热这里只有精品5| 色综合视频在线观看| 九九免费精品视频| 欧美国产成人在线| xfplay5566色资源网站| 麻豆精品视频在线观看| 国产乱子伦农村叉叉叉| 午夜欧美在线| 日韩女优中文字幕| 激情亚洲另类图片区小说区| 国产精品视频导航| 国产经典三级在线| 中文字幕日韩精品在线观看| 中文字幕手机在线视频| 一区二区欧美国产| 亚洲一级片在线播放| 91在线一区二区| 91丨porny丨九色| 久久99国产精品尤物| 色婷婷综合久久久久中文字幕| 亚洲欧美日本伦理| 国产v亚洲v天堂无码| 99tv成人影院| 欧美成人在线免费| 3p视频在线观看| 亚洲跨种族黑人xxx| 男人天堂网在线视频| 欧美丰满高潮xxxx喷水动漫| 日韩国产成人在线| 欧美日韩在线视频首页| 国产一级做a爱免费视频| 国产精品国产三级国产有无不卡| 在哪里可以看毛片| 91香蕉视频污在线| 久久久久麻豆v国产精华液好用吗| 狠狠狠色丁香婷婷综合激情| 欧美在线观看视频免费| 91久久夜色精品国产按摩| 日韩精品久久一区| 精品理论电影在线| 日韩av不卡播放| 成人国产精品一级毛片视频| 欧美第一黄网| 尤物tv在线精品| 久久久久免费网| 日日夜夜综合| 国产男人精品视频| 久久精品国产精品亚洲毛片| 国产精品欧美日韩久久| 亚洲不卡系列| 国产欧美精品日韩| 亚洲网站免费| 91日韩在线视频| 九色精品蝌蚪| 官网99热精品| 色婷婷精品视频| 欧美日韩亚洲一区二区三区在线观看| 亚洲裸色大胆大尺寸艺术写真| 另类欧美小说| 国产精品午夜一区二区三区| 日本一区视频在线播放| 日韩综合精品| 免费的av在线| 亚洲三级影院| 日韩视频在线免费看| 蜜臀va亚洲va欧美va天堂| 久久国产精品国产精品| 国精产品一区一区三区mba视频| 99中文字幕在线| 欧美专区在线| 在线视频日韩一区| 蜜桃精品视频在线| 色男人天堂av| 99久久精品费精品国产一区二区| 草草影院第一页| 国产精品国产三级国产普通话三级| 动漫性做爰视频| 亚洲国产精品久久久久婷婷884| 午夜精品三级久久久有码| 色偷偷久久一区二区三区| 一卡二卡在线观看| 精品国产乱码久久久久久老虎 | 中文字幕在线亚洲| 快射视频在线观看| 久久久久国产精品一区| 韩日成人影院| 亚洲japanese制服美女| 欧美亚洲国产日韩| 一区二区精品免费视频| 狠久久av成人天堂| 日本免费观看网站| 粉嫩av一区二区三区| 中国女人特级毛片| 亚洲一二三四区不卡| 中文字幕av第一页| 精品国产凹凸成av人导航| 国产毛片在线看| 欧美高清第一页| aa在线视频| 欧美一区二区色| 免费观看性欧美大片无片| 久久精品99| 国产一区久久| 91精品无人成人www| caoporm超碰国产精品| 亚洲天堂av中文字幕| 精品国产福利视频| 精品国产av鲁一鲁一区| 亚洲最新视频在线| 国产日产精品久久久久久婷婷| 超碰97人人做人人爱少妇| 成人私拍视频| 国产乱码精品一区二区三区日韩精品 | 中文字幕日韩精品无码内射| 日韩福利视频导航| 无码精品一区二区三区在线播放| 最新国产成人在线观看| 波多野结衣小视频| 日韩二区三区在线| 日本三级韩国三级欧美三级| 国产精品久久久久久久久久久久久久| 国产一区福利| 欧美一级爱爱视频| 精品一区二区在线视频| 欧美另类z0zx974| 岛国av一区二区| 内射无码专区久久亚洲| 欧美成人免费网| 国产精品视频一区二区三区综合 | 午夜在线视频一区二区区别| 国产乱国产乱老熟300部视频| 国产精品久久久久久福利一牛影视| 国产嫩bbwbbw高潮| 国产网站欧美日韩免费精品在线观看| 日本伦理一区二区| 99理论电影网| 亚洲免费二区| 亚洲av无日韩毛片久久| 国产一区二区在线免费观看| 五月激情四射婷婷| 欧美三级视频在线| av在线电影播放| 国产精品激情av在线播放| 国产探花在线精品| 日本成人黄色网| 国产精品蜜臀av| 国产一区二区三区成人| 久久久精品2019中文字幕神马| 日本午夜免费一区二区| 亚洲一区影院| 国内精品免费**视频| 免费中文字幕在线| 欧美成人精品高清在线播放| 牛牛精品视频在线| 国语精品中文字幕| 亚洲一区二区免费看| 国产全是老熟女太爽了| 91福利在线观看| 人人干在线视频| 91精品国自产在线观看 | 午夜免费一区二区| 国产精品麻豆久久久| 国产情侣在线播放| 欧美激情第1页| 欧美丝袜美腿| 看欧美ab黄色大片视频免费| 国产精品理伦片| 亚洲av永久纯肉无码精品动漫| 久久久久久国产精品美女| 欧美大片网址| 男人搞女人网站| 亚洲精品美腿丝袜| 人妻91麻豆一区二区三区| 日本精品va在线观看| 久久看人人摘| 国产免费无码一区二区| 色欧美片视频在线观看在线视频| av在线第一页| 国产在线精品一区二区三区》| 免费在线亚洲欧美| 午夜成人亚洲理伦片在线观看| 精品久久久久久久久久久久久久久 | 久久精品无码专区| 欧美午夜影院在线视频| 超碰免费97在线观看| 91麻豆精品秘密入口| 国产精品一二| 久久精品日韩无码| 在线免费一区三区| 麻豆网站视频在线观看| 国产欧美一区二区三区另类精品| 日韩中文字幕区一区有砖一区| 色婷婷在线视频观看| 日韩精品高清在线| 91视频亚洲| av免费中文字幕| 一区二区三区日本| 国产福利小视频在线观看| 99精品在线直播| 蜜臀av国产精品久久久久| 久久精品国产亚洲AV无码麻豆| 久青青在线观看视频国产|