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

OpenHarmony瘦設(shè)備內(nèi)核移植實(shí)戰(zhàn)(三)

系統(tǒng) OpenHarmony
本文主要講述OpenHarmony內(nèi)核的SoC代碼移植。因?yàn)镾TM32F407的架構(gòu)和基礎(chǔ)SDK都是官方開源的,所以移植工作也較為容易,但在實(shí)際工作中如果遇到未開源的芯片,那么需要模組或芯片廠商提供技術(shù)支持才可完成移植工作。

想了解更多關(guān)于開源的內(nèi)容,請(qǐng)?jiān)L問:

51CTO 開源基礎(chǔ)軟件社區(qū)

https://ost.51cto.com

一、背景

OpenHarmony系統(tǒng)移植最核心的步驟是內(nèi)核的移植,內(nèi)核的穩(wěn)定是一切子系統(tǒng)穩(wěn)定的基礎(chǔ),上一篇我們講述了內(nèi)核啟動(dòng)原理,以及vendor、board的開發(fā)配置,本文將介紹SoC層級(jí)的移植適配流程。

二、SoC適配

SoC配置芯片層級(jí)編譯依賴庫(kù),包括CMSIS、HAL(硬件抽象層)等,這里包含操作總線、串口、時(shí)鐘、寄存等庫(kù)函數(shù)。

1、創(chuàng)建對(duì)應(yīng)的文件目錄結(jié)構(gòu)

目錄名稱按照芯片廠家、芯片型號(hào)來(lái)創(chuàng)建,比如st公司下的stm32f4xx系列芯片。

OpenHarmony瘦設(shè)備內(nèi)核移植實(shí)戰(zhàn)(三)-開源基礎(chǔ)軟件社區(qū)

配置文件內(nèi)容如下:

device/soc/st/stm32f4xx/Kconfig.liteos_m.defconfig.series
if SOC_SERIES_STM32F4xx
rsource "Kconfig.liteos_m.defconfig.stm32f4xx"
config SOC_SERIES
string
default "stm32f4xx"
endif
device/soc/st/stm32f4xx/Kconfig.liteos_m.defconfig.stm32f4xx
config SOC
string
default "stm32f4xx"
depends on SOC_STM32F4xx
device/soc/st/stm32f4xx/Kconfig.liteos_m.series
config SOC_SERIES_STM32F4xx
bool "STMicroelectronics STM32F4xx series"
select ARCH_ARM
select SOC_COMPANY_STMICROELECTRONICS
select CPU_CORTEX_M4
help
Enable support for STMicroelectronics STM32F4xx series
device/soc/st/stm32f4xx/Kconfig.liteos_m.soc
choice
prompt "STMicroelectronics STM32F4xx series SoC"
depends on SOC_SERIES_STM32F4xx
config SOC_STM32F407
bool "SoC STM32F407"
Endchoice
device/soc/st/Kconfig.liteos_m.defconfig
rsource "*/Kconfig.liteos_m.defconfig.series"
device/soc/st/Kconfig.liteos_m.defconfig
rsource "*/Kconfig.liteos_m.series"
device/soc/st/Kconfig.liteos_m.soc
config SOC_COMPANY_STMICROELECTRONICS
bool
if SOC_COMPANY_STMICROELECTRONICS
config SOC_COMPANY
default "st"
rsource "*/Kconfig.liteos_m.soc"
endif # SOC_COMPANY_STMICROELECTRONICS
device/soc/st/BUILD.gn
if (ohos_kernel_type == "liteos_m") {
import("http://kernel/liteos_m/liteos.gni")
module_name = get_path_info(rebase_path("."), "name")
module_group(module_name) {
modules = [ "stm32f4xx" ]
}
}
device/soc/st/stm32f4xx/BUILD.gn
if (ohos_kernel_type == "liteos_m") {
import("http://kernel/liteos_m/liteos.gni")
module_name = get_path_info(rebase_path("."), "name")
module_group(module_name) {
modules = [ "liteos_m", "sdk" ]
}
}

2、移植HAL庫(kù)函數(shù)等文件

對(duì)于STM32F407我們可以使用官方的STM32CubeMX生成對(duì)應(yīng)的標(biāo)準(zhǔn)的hal庫(kù)函數(shù)文件。

(1)選擇ACCESS TO MCU SELECTOR。

OpenHarmony瘦設(shè)備內(nèi)核移植實(shí)戰(zhàn)(三)-開源基礎(chǔ)軟件社區(qū)

(2)勾選Arm Cortex-M4 --> STM32F4 --> STM32F407ZGTx。

OpenHarmony瘦設(shè)備內(nèi)核移植實(shí)戰(zhàn)(三)-開源基礎(chǔ)軟件社區(qū)

(3)填寫工程名稱,選擇工程保存路徑,選擇Makefile作為編譯工具,點(diǎn)擊GENERATE CODE生成工程代碼。

OpenHarmony瘦設(shè)備內(nèi)核移植實(shí)戰(zhàn)(三)-開源基礎(chǔ)軟件社區(qū)

(4)使用vscode打開目錄,我們得到如下工程。

OpenHarmony瘦設(shè)備內(nèi)核移植實(shí)戰(zhàn)(三)-開源基礎(chǔ)軟件社區(qū)

回顧一下之前講過(guò)的系統(tǒng)啟動(dòng)的流程:

  • HAL初始化
  • 系統(tǒng)時(shí)鐘初始化
  • 系統(tǒng)初始化
  • 系統(tǒng)啟動(dòng)

接下來(lái)我們將HAL庫(kù)函數(shù)文件及芯片頭文件遷移到OH代碼中,文件路徑如下:

OpenHarmony瘦設(shè)備內(nèi)核移植實(shí)戰(zhàn)(三)-開源基礎(chǔ)軟件社區(qū)

將Drivers中的CMSIS、STM32F4xx_HAL_Driver復(fù)制到/device/soc/st/stm32f4xx/sdk/Drivers中。

OpenHarmony瘦設(shè)備內(nèi)核移植實(shí)戰(zhàn)(三)-開源基礎(chǔ)軟件社區(qū)

3、修改系統(tǒng)編譯配置文件

使用OH的gn以及config文件配置系統(tǒng)編譯流程以及包依賴關(guān)系,涉及到的配置文件如下:

device/board/alientek/explorer/liteos_m/config.gni# Kernel type, e.g. "linux", "liteos_a", "liteos_m".kernel_type = "liteos_m"# Kernel version.kernel_version = "3.0.0"# Board CPU type, e.g. "cortex-a7", "riscv32".board_cpu = "cortex-m4"# Board arch, e.g. "armv7-a", "rv32imac".board_arch = ""# Toolchain name used for system compiling.# E.g. gcc-arm-none-eabi, arm-linux-harmonyeabi-gcc, ohos-clang, riscv32-unknown-elf.# Note: The default toolchain is "ohos-clang". It's not mandatory if you use the default toolchain.board_toolchain = "arm-none-eabi-gcc"use_board_toolchain = true# The toolchain path installed, it's not mandatory if you have added toolchain path to your ~/.bashrc.board_toolchain_path = ""# Compiler prefix.board_toolchain_prefix = "arm-none-eabi-"# Compiler type, "gcc" or "clang".board_toolchain_type = "gcc"#Debug compiler optimization level optionsboard_opt_flags = ["-mcpu=cortex-m4","-mthumb","-mfpu=fpv4-sp-d16","-mfloat-abi=hard",]# Board related common compile flags.board_cflags = ["-Og","-Wall","-fdata-sections","-ffunction-sections","-DSTM32F407xx","-DHAL_UART_MODULE_ENABLED"]board_cflags += board_opt_flagsboard_asmflags = ["-Og","-Wall","-fdata-sections","-ffunction-sections",]board_asmflags += board_opt_flagsboard_cxx_flags = board_cflagsboard_ld_flags = ["-T${ohos_root_path}device/board/alientek/explorer/liteos_m/STM32F407ZGTx_FLASH.ld"]board_ld_flags += board_opt_flags# Board related headfiles search path.board_include_dirs = [ "http://utils/native/lite/include" ]# Board adapter dir for OHOS components.board_adapter_dir = ""這里的核心工作就是將原有的Makefile編譯文件翻譯成OH的config.gni,可以看到有很多的編譯參數(shù)以及宏變量定義。修改編譯依賴文件BUILD.gndevice/board/alientek/explorer/liteos_m/BUILD.gnimport("http://kernel/liteos_m/liteos.gni")module_name = get_path_info(rebase_path("."), "name")kernel_module(module_name) {sources = ["startup_stm32f407xx.s","Src/main.c","Src/delay.c","Src/led.c","Src/sys.c","Src/usart.c","Src/stm32f4xx_hal_msp.c","Src/stm32f4xx_it.c","Src/system_stm32f4xx.c",]include_dirs = [ "Inc",]}# "-Wl,-T" + rebase_path("STM32F407ZGTx_FLASH.ld"),config("public") {ldflags = ["-Wl,-u_printf_float"]libs = ["c","m","nosys",]}device/soc/st/stm32f4xx/sdk/BUILD.gnimport("http://kernel/liteos_m/liteos.gni")module_name = "stm32f4xx_sdk"kernel_module(module_name) {asmflags = board_asmflagssources = ["Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_rcc.c","Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_rcc_ex.c","Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c","Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma_ex.c","Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c","Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_cortex.c","Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c","Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_exti.c","Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c",]include_dirs = ["http://device/board/alientek/explorer/liteos_m/Inc"]}#指定全局頭文件搜索路徑config("public") {include_dirs = ["Drivers/STM32F4xx_HAL_Driver/Inc","Drivers/CMSIS/Device/ST/STM32F4xx/Include",]}

4、改造main函數(shù),拉起系統(tǒng)內(nèi)核

我們對(duì)device/board/alientek/explorer/liteos_m/Src/main.c文件進(jìn)行如下編輯。

int main(void)
{
HAL_Init();                         /* 初始化HAL庫(kù) */
sys_stm32_clock_init(336, 8, 2, 7); /* 初始化時(shí)鐘頻率168Mhz */
delay_init(168);                    /* 延時(shí)初始化 */
printf("hal、系統(tǒng)始終初始化完畢,開始啟動(dòng)系統(tǒng)...\n");
RunTask();
}
void RunTask()
{
unsigned int ret;
ret = LOS_KernelInit();  // 初始化LiteOS系統(tǒng)
if (ret != LOS_OK)
{
printf("Liteos kernel init failed! ERROR: 0x%x\n", ret);
}
else
{
LOS_Start(); // 啟動(dòng)系統(tǒng)
}
...
}

三、編譯與燒錄

使用hb工具進(jìn)行編譯,hb set選擇編譯目標(biāo),hb build -f執(zhí)行編譯。

OpenHarmony瘦設(shè)備內(nèi)核移植實(shí)戰(zhàn)(三)-開源基礎(chǔ)軟件社區(qū)

日志輸出explorer build success表示編譯成功。

編譯過(guò)程中可能會(huì)遇到缺少某些結(jié)構(gòu)體或者函數(shù)的定義,需要細(xì)心排查,注意宏定義是否打開。

STM32F407開發(fā)板支持串口和ST-LINK燒錄方式,但OH編譯出來(lái)的是bin文件,bin無(wú)法直接通過(guò)串口燒錄。需要用到ST-LINK工具進(jìn)行燒錄,燒錄時(shí)需要指定flash,開始地址:0x08000000,大小:0x100000。

OpenHarmony瘦設(shè)備內(nèi)核移植實(shí)戰(zhàn)(三)-開源基礎(chǔ)軟件社區(qū)

開始燒錄

OpenHarmony瘦設(shè)備內(nèi)核移植實(shí)戰(zhàn)(三)-開源基礎(chǔ)軟件社區(qū)

點(diǎn)亮開發(fā)板

OpenHarmony瘦設(shè)備內(nèi)核移植實(shí)戰(zhàn)(三)-開源基礎(chǔ)軟件社區(qū)

四、總結(jié)

本文主要講述了OpenHarmony內(nèi)核的SoC代碼移植。因?yàn)镾TM32F407的架構(gòu)和基礎(chǔ)SDK都是官方開源的,所以移植工作也較為容易,但在實(shí)際工作中如果遇到未開源的芯片,那么需要模組或芯片廠商提供技術(shù)支持才可完成移植工作。到這里瘦設(shè)備OH適配的最核心工作已完成,希望能對(duì)熱愛OpenHarmony的小伙伴有所幫助。

想了解更多關(guān)于開源的內(nèi)容,請(qǐng)?jiān)L問:

51CTO 開源基礎(chǔ)軟件社區(qū)

https://ost.51cto.com

責(zé)任編輯:jianghua 來(lái)源: 51CTO 開源基礎(chǔ)軟件社區(qū)
相關(guān)推薦

2023-05-05 16:05:26

設(shè)備內(nèi)核移植鴻蒙

2020-09-17 17:41:24

Liteos-a鴻蒙Linux

2020-11-13 09:45:36

Liteos-a

2023-02-08 15:46:50

設(shè)備移植第三方內(nèi)核適配

2023-02-07 15:52:50

2023-02-06 16:21:48

2023-03-06 16:11:00

設(shè)備移植開源GPU驅(qū)動(dòng)

2023-03-10 09:47:45

OpenGL渲染設(shè)備移植

2023-03-23 16:02:07

樹莓派4GPU調(diào)試

2023-02-28 15:40:16

鴻蒙CPU渲染

2023-04-06 09:10:13

設(shè)備移植鴻蒙

2023-02-14 17:06:31

設(shè)備移植打包刷機(jī)

2013-03-13 10:51:44

瘦客戶端VDI

2023-02-01 16:28:30

Linux內(nèi)核鴻蒙

2022-09-13 16:10:15

鴻蒙操作系統(tǒng)

2022-10-11 15:04:28

NAPI開發(fā)鴻蒙

2023-04-10 09:44:22

內(nèi)核鼠標(biāo)調(diào)試鴻蒙

2022-04-15 14:31:02

鴻蒙操作系統(tǒng)

2021-09-08 15:23:51

鴻蒙HarmonyOS應(yīng)用

2024-07-26 16:39:33

鴻蒙系統(tǒng)開源構(gòu)建系統(tǒng)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

国产电影一区| 精品999在线观看| 亚洲精品视频一二三| 最新天堂在线视频| 青青草av免费在线观看| 日韩激情精品| 国产精品久久久久久久久动漫 | 欧美尤物巨大精品爽| 欧美一级xxxx| 三级中文字幕在线观看| 国产一区福利在线| 最新国产精品拍自在线播放| 日韩视频免费在线播放| 日韩一级片免费| 精品9999| 日韩精品一区二区三区四区| 亚洲国产精品影视| 亚洲字幕av一区二区三区四区| 国产成人精品999在线观看| 亚洲综合免费观看高清在线观看 | 疯狂欧洲av久久成人av电影| 亚洲成人在线免费| 成人三级在线| 久久久久无码国产精品| 欧美日韩国产一区二区在线观看| 综合激情成人伊人| 91免费人成网站在线观看18| 男人晚上看的视频| 日韩在线激情| 亚洲色图欧美在线| 91在线视频精品| 国产99免费视频| 欧美综合在线视频观看 | 艳妇乳肉豪妇荡乳av| 国产日韩一区二区三区在线| 亚洲福利视频久久| 日本免费不卡一区二区| 日本1级在线| 国产99久久久久| 久久久亚洲福利精品午夜| 成人欧美精品一区二区| brazzers在线观看| 久久亚洲综合av| 国产成人在线视频| 久久精品国产亚洲AV成人婷婷| 另类中文字幕国产精品| 国产精品美女久久久久aⅴ | 波多野结衣一区二区三区四区| 亚洲夜间福利| 欧美疯狂做受xxxx高潮| 成人做爰69片免费| 2021中文字幕在线| 亚洲综合网站在线观看| 日本黄xxxxxxxxx100| 亚洲精品成av人片天堂无码| 国产精品日韩| 性色av一区二区三区红粉影视| 精品少妇人妻一区二区黑料社区| 日本免费一区二区三区四区| 国产精品久久久久久久蜜臀| 欧美在线激情| www.xxxx国产| 国产免费成人| 51午夜精品视频| 国产无遮挡呻吟娇喘视频| 日韩av密桃| 日韩你懂的在线观看| 中文字幕在线观看视频www| 麻豆免费在线| 一本到高清视频免费精品| 在线视频不卡一区二区| 午夜国产在线视频| 精品一区二区综合| 668精品在线视频| 亚洲视频重口味| 欧美在线国产| 中文字幕日韩精品在线| 99久久人妻精品免费二区| 欧美videos粗暴| 好吊成人免视频| 国产一级不卡视频| 欧美一区二区三区| 久久久高清一区二区三区| 91精品网站| 国产精品无码一区| 国产精品毛片在线| 国产精品第2页| 久久免费激情视频| 亚洲毛片av| 欧美日韩高清区| 美女三级黄色片| 亚洲无线视频| 欧美美女操人视频| 久热这里只有精品6| 蜜臀精品久久久久久蜜臀| 国产91精品高潮白浆喷水| 亚洲不卡在线视频| 亚洲欧美视频| 4444欧美成人kkkk| 国产免费高清av| 蜜臀av亚洲一区中文字幕| 91传媒视频免费| 黑人与亚洲人色ⅹvideos| 99re成人精品视频| 国产伦精品一区二区三| 亚洲av无码国产精品久久不卡| 99re6这里只有精品视频在线观看| 一区不卡字幕| 里番在线观看网站| 国产女主播一区| 欧美一区二区视频17c| 久久综合之合合综合久久| 欧美日韩亚洲精品内裤| 中文字幕第10页| 亚洲高清在线一区| 国产小视频国产精品| 老头老太做爰xxx视频| 日韩精品导航| 亚洲精品自拍第一页| 欧美日韩一区二区区| 欧美电影完整版在线观看| 亚洲激情免费观看| 一级国产黄色片| 午夜精品国产| 国产精品视频播放| 国产精品无码在线播放| 国产精品18久久久久| 成人91免费视频| 日韩专区第一页| 久久无码av三级| 无颜之月在线看| 亚洲视频资源| 精品成人佐山爱一区二区| 免费a级黄色片| 精品国产中文字幕第一页| 午夜精品久久17c| 亚洲经典一区二区三区| 亚洲欧美日韩国产中文在线| 免费网站永久免费观看| 亚洲成人a级片| 自拍偷拍亚洲精品| 亚洲精品一区二区二区| 久久精品水蜜桃av综合天堂| 北条麻妃在线观看| 国语自产精品视频在线看抢先版结局| 亚洲日本中文字幕| 日本一级片免费| 蜜臀av性久久久久av蜜臀妖精| 日本一区二区精品| 偷拍视频一区二区三区| 亚洲人精品午夜在线观看| 可以免费在线观看的av| 91麻豆成人久久精品二区三区| 亚洲国产精品视频一区| 自拍偷自拍亚洲精品被多人伦好爽 | 日本欧洲国产一区二区| 日韩在线影院| 视频在线观看一区二区| 日韩精选在线观看| 国产精品嫩草99a| 午夜视频在线观| 加勒比色老久久爱综合网| 国产亚洲欧洲高清| 在线视频 91| 亚洲久本草在线中文字幕| 风韵丰满熟妇啪啪区老熟熟女| 伊人狠狠色j香婷婷综合| 国产一区免费视频| 伊人免费在线| 天天射综合影视| 日韩成人av免费| 欧美精品第一区| 久久久久免费视频| 一级特黄aaa大片| 97精品久久久午夜一区二区三区 | 正在播放国产精品| 日韩在线精品强乱中文字幕| 午夜精品99久久免费| 久久天堂电影| 亚洲成人久久影院| www.av欧美| 久久精品国产亚洲高清剧情介绍 | 成人精品在线播放| 国产精品乱码久久久久久| 91蝌蚪视频在线| 国产欧美大片| 91社在线播放| 日韩激情毛片| 亚洲free嫩bbb| a天堂在线资源| 精品久久久久久中文字幕| 四虎影成人精品a片| 国产一区二区按摩在线观看| 一二三四视频社区在线| 9国产精品午夜| 蜜臀久久99精品久久久无需会员 | 91在线视频18| 激情黄色小视频| 国产亚洲激情| 在线观看av的网址| 精品国产一级毛片| 国产一区二区在线观看免费播放| 日韩毛片免费看| 欧美中文在线观看国产| 欧美自拍偷拍一区二区| 欧美性感一区二区三区| 色一情一交一乱一区二区三区| 一本一道久久综合狠狠老精东影业| 97超碰人人看人人| 欧美性理论片在线观看片免费| 欧美激情精品久久久久久久变态| 成人免费黄色网页| 日韩精品在线视频| 亚洲AV无码精品自拍| 欧美三片在线视频观看 | 不卡一区综合视频| 日韩暖暖在线视频| 国产小视频在线观看| 亚洲成人xxx| 国产av无码专区亚洲a∨毛片| 亚洲欧美日韩在线| 免费福利视频网站| 91在线精品一区二区三区| 毛片毛片毛片毛片毛| 蜜臀a∨国产成人精品| 37pao成人国产永久免费视频| 国产一区视频在线观看免费| 亚洲 欧洲 日韩| 日韩欧美字幕| 午夜午夜精品一区二区三区文| 精品176极品一区| 国产91色在线|| 波多视频一区| 日韩中文字幕在线视频| 国产精品玖玖玖| 欧美视频一区在线| 日韩免费av网站| 色综合久久88色综合天天 | 欧美三级一区二区| 无码人妻精品一区二区三区9厂| 精品国产乱码久久久久久天美| 精品视频一区二区在线观看| 一区二区三区欧美日| 香蕉在线观看视频| 国产精品资源在线| 99爱视频在线| 天天综合网网欲色| 国产一区福利视频| 国产精品任我爽爆在线播放| 国产高清在线不卡| 欧美日韩大片| 国产91色在线| 日韩成人综合网| 亚洲综合自拍一区| 99香蕉久久| 欧美极品日韩| 麻豆精品国产| 97视频中文字幕| 国产三级精品三级在线观看国产| 精品国产一区二区三区日日嗨| 国产伦乱精品| 日本一区二区三区四区在线观看 | 不卡av电影在线| 欧美日韩专区在线| 国产精品久久久久久久免费看| 欧美一区二区在线免费观看| 久久久免费高清视频| 色悠久久久久综合欧美99| 日本三级一区二区三区| 欧美精品精品一区| 免费黄色片视频| 欧美精品久久天天躁| 国产成人手机在线| 日韩精品在线观看一区二区| 成人高清免费在线播放| 久久亚洲国产精品| 最近高清中文在线字幕在线观看| 91精品麻豆日日躁夜夜躁| 欧美精品一二三四区| 亚洲图片欧美视频| 五月天av网站| 亚洲国产成人在线| 九色porny自拍视频| 国产精品美女久久久久av爽李琼| 欧美人禽zoz0强交| 黑人精品xxx一区| 国产视频第二页| 国产视频一区在线| gogo在线高清视频| 久久久精品亚洲| 欧洲美女少妇精品| 久久人人97超碰精品888| 小明成人免费视频一区| 国产精品18毛片一区二区| 国产精品一线天粉嫩av| 欧美 亚洲 视频| 午夜精品免费| 可以在线看的黄色网址| 久久亚洲视频| 已婚少妇美妙人妻系列| 激情成人综合网| 97免费公开视频| 国产亚洲人成网站| 全黄一级裸体片| 一区二区三区蜜桃网| 亚洲精品国产欧美在线观看| 亚洲成avwww人| 米奇精品一区二区三区| 青青草原一区二区| av在线亚洲色图| 黄色免费高清视频| 视频一区二区国产| 欲求不满的岳中文字幕| 亚洲精品国产a| 中文字幕有码无码人妻av蜜桃| 在线观看免费一区| 亚洲视频在线免费播放| 日韩经典中文字幕在线观看| 欧美美乳在线| 久久久久久伊人| 日韩成人18| 正在播放精油久久| 蜜桃视频一区二区三区在线观看| 欧美高清性xxxx| 国产精品每日更新| 无码人妻精品一区二区三区9厂| 亚洲精品在线电影| 18加网站在线| 国产91ⅴ在线精品免费观看| 粉嫩一区二区三区四区公司1| 特色特色大片在线| 亚洲人成久久| 在线播放av网址| 亚洲一二三专区| 午夜美女福利视频| 欧美大学生性色视频| 视频精品一区| 欧美亚洲色图视频| 国产91综合一区在线观看| 2021亚洲天堂| 日韩欧中文字幕| 偷拍25位美女撒尿视频在线观看| 国产一区二区三区在线视频 | 91在线公开视频| 中文字幕日韩av电影| 日韩欧美精品电影| 日日骚一区二区网站| 日韩av午夜在线观看| 成 人 黄 色 小说网站 s色| 久久精品免费在线观看| 中文字幕在线天堂| 最近2019中文字幕大全第二页| 国精品产品一区| 色撸撸在线观看| 粉嫩一区二区三区在线看| 国产亚洲第一页| 日韩成人在线免费观看| 亚洲精品mv| 99精彩视频在线观看免费| 欧美视频亚洲视频| 麻豆一区二区三区视频| 成人sese在线| 日日碰狠狠添天天爽| 欧美日韩综合视频网址| www.天天干.com| 欧美精品videos另类日本| 奇米777国产一区国产二区| 黑森林福利视频导航| 国产精品久99| www.色视频| 日本成人黄色片| 91蜜臀精品国产自偷在线| aa在线免费观看| 中文成人av在线| 亚洲av无码国产精品永久一区| 欧美一区三区三区高中清蜜桃| 成人精品久久| fc2成人免费视频| 亚洲精品国产高清久久伦理二区| 日本黄视频在线观看| 日韩美女免费观看| 中文字幕一区二区三区久久网站 | 91香蕉在线视频| 欧美一区二区三区喷汁尤物| av中文字幕电影在线看| 女同一区二区| 欧美黑人猛猛猛| 久久国产三级精品| 久久艹精品视频| 69久久夜色精品国产69蝌蚪网| 色www永久免费视频首页在线| 国产精品嫩草影院久久久| 你懂的网址国产 欧美| 老牛影视av老牛影视av| 欧美一级在线视频| 欧美日韩不卡| 久艹视频在线免费观看| 成人h动漫精品一区二区| 免费在线不卡av| 欧美激情一区二区三区成人|