色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

riscv64上運(yùn)行完整Linux的流程

嵌入式IoT ? 來(lái)源:嵌入式IoT ? 作者:嵌入式IoT ? 2021-05-23 15:01 ? 次閱讀

搭建qemu RISC-V運(yùn)行Linux環(huán)境

1.本文概述

2.工具介紹

2.1 riscv-gnu-toolchain

2.2 spike

2.3 RISC-V Porxy Kernel

2.4 編譯工具

3.編譯Linux Kernel

4.編譯busybox

5.制作根文件系統(tǒng)

6.編譯安裝qemu

7.啟動(dòng)基本Linux程序

8.運(yùn)行發(fā)行版本OS(fedora&ubuntu)

8.1 下載安裝fedora鏡像

8.2 下載安裝ubuntu鏡像

9.總結(jié)

1.本文概述目前雖然RISC-V的硬件開(kāi)發(fā)板能夠運(yùn)行Linux的十分難得,從探索RISCV的生態(tài)的角度上來(lái)看,使用模擬器也是一種非常好的方式。使用QEMU能夠很好的模擬RISCV的硬件資源,后期有實(shí)際的開(kāi)發(fā)板后將其軟件生態(tài)移植上去也并不復(fù)雜。

本文將演示QEMU上建立RISCV的環(huán)境,以及如何交叉編譯Linux,通過(guò)文章的描述,可以掌握RISC-V上的Linux的編譯開(kāi)發(fā)流程,文章也展示了在riscv64架構(gòu)上運(yùn)行fedora和ubuntu兩個(gè)Linux發(fā)行版本的過(guò)程。

2.工具介紹在進(jìn)行環(huán)境搭建之前,首先先來(lái)介紹一些目前開(kāi)源的比較熱門(mén)的RISCV工具項(xiàng)目。

2.1 riscv-gnu-toolchain

RISCV的GNU工具鏈,是編譯RISC-V程序的交叉編譯工具鏈。

https://github.com/riscv/riscv-gnu-toolchain

主要有兩個(gè)版本:

riscv64--unknown--elf-gcc是使用newlib,主要用于靜態(tài)編譯的獨(dú)立的程序或者單機(jī)嵌入式程序,RTOS等等。

riscv64-unknown--linux--gnu--gcc使用的glibc,可以編譯動(dòng)態(tài)鏈接程序,例如大型操作系統(tǒng)如Linux等等。

如果編譯選項(xiàng)加上-nostartfiles -nostdlib -nostdinc,兩個(gè)編譯版本一致

2.2 spike

spike是一個(gè)開(kāi)源的RISC-V的指令模擬器,實(shí)現(xiàn)了一個(gè)和多個(gè)RISC-V harts的功能,提供了豐富的系統(tǒng)仿真,其名稱來(lái)自于Golden Spike,是第一條橫貫美國(guó)大陸的鐵路。

https://github.com/riscv/riscv-isa-sim

在RISC-V架構(gòu)指令集擴(kuò)展層面有著非常好的實(shí)現(xiàn)。

2.3 RISC-V Porxy Kernel

RISC-V Proxy Kernel and Boot Loader,簡(jiǎn)稱RISCV-PK,是一個(gè)輕量級(jí)的應(yīng)用程序的可執(zhí)行環(huán)境,可以加載靜態(tài)的RISCV ELF的可執(zhí)行文件。主要兩個(gè)功能,代理和引導(dǎo)啟動(dòng),可以作為引導(dǎo)啟動(dòng)RISC-V的Linux的環(huán)境。

https://github.com/riscv/riscv-pk

2.4 編譯工具

如果要一次性部署這些工具,可以通過(guò)下面的倉(cāng)庫(kù)進(jìn)行操作

https://github.com/riscv/riscv-tools

在此之前,首先安裝必要的程序,本次使用的環(huán)境為Ubuntu20.04。

sudo apt install autoconf automake autotools-dev curl libmpc-dev libmpfr-dev libgmp-dev libusb-1.0-0-dev gawk build-essential bison flex texinfo gperf libtool patchutils bc zlib1g-dev device-tree-compiler pkg-config libexpat-dev libncurses5-dev libncursesw5-dev

當(dāng)安裝好必要的程序后,可以clone倉(cāng)庫(kù)。

git clone https://github.com/riscv/riscv-tools.git

git submodule update --init --recursive

export RISCV=~/riscv

。/build.sh

可能會(huì)遇到如下的錯(cuò)誤:

2e2fad54-b4c7-11eb-bf61-12bb97331649.png

要解決這個(gè)問(wèn)題,首先需要安裝下載riscv64的交叉編譯工具鏈。

git clone https://github.com/riscv/riscv-gnu-toolchain

。/configure --prefix=$RISCV

其中配置項(xiàng)目--enable-multilib表示編譯32bit和64bit的gcc,支持,這里不選擇,只編譯32bit的交叉編譯工具鏈。

經(jīng)過(guò)測(cè)試最高版本的gcc交叉編譯工具鏈,編譯riscv-tools會(huì)出現(xiàn)異常,所以替換成低一點(diǎn)的版本。

riscv-gnu-toolchain/riscv-gcc

git checkout riscv-gcc-8.2.0

緊接著開(kāi)始編譯

make -j $(nproc)

表示編譯baremate版本的嵌入式交叉編譯環(huán)境。

make -j $(nproc) linux

編譯Linux版本的交叉編譯環(huán)境。

編譯完成后,可以看到編譯好的程序。

ls ~/riscv/bin

然后,返回去編譯riscv-tools。

最后導(dǎo)出環(huán)境變量

export PATH=/home/bigmagic/riscv/bin:$PATH

3.編譯Linux Kernel在編譯Linux Kernel之前,需要安裝相關(guān)的工具。

sudo apt install libncurses5-dev libncursesw5-dev

下載編譯Linux Kernel

git clone https://github.com/torvalds/linux.git

cd linux

git checkout v5.10

make ARCH=riscv CROSS_COMPILE=riscv64-unknown-linux-gnu- defconfig

make ARCH=riscv CROSS_COMPILE=riscv64-unknown-linux-gnu- -j $(nproc)

編譯完成后,最后生成的Kernel文件在linux/arch/riscv/boot/Image。

4.編譯busybox可以用busybox制作生成根文件系統(tǒng),同時(shí)也提供了Linux下運(yùn)行的一些基本程序與控制臺(tái)。

git clone https://git.busybox.net/busybox

cd busybox

git checkout 1_32_1

CROSS_COMPILE=riscv64-unknown-linux-gnu- make defconfig

CROSS_COMPILE=riscv64-unknown-linux-gnu- make menuconfig

需要選擇靜態(tài)link。

選擇靜態(tài)link

然后開(kāi)始編譯

CROSS_COMPILE=riscv64-unknown-linux-gnu- make -j $(nproc)

5.制作根文件系統(tǒng)下面來(lái)制作一個(gè)空的磁盤(pán),格式為ext2的文件系統(tǒng)。

dd if=/dev/zero of=root.bin bs=1M count=64

mkfs.ext2 -F root.bin

這樣就制作了一個(gè)空的,名稱為root.bin文件格式為ext2的文件系統(tǒng)。

接著只需要將busybox的程序加載進(jìn)去即可。

mkdir mnt

sudo mount -o loop root.bin mnt

cd mnt

sudo mkdir -p bin etc dev lib proc sbin tmp usr usr/bin usr/lib usr/sbin

sudo cp ~/busybox/busybox bin

sudo ln -s 。./bin/busybox sbin/init

sudo ln -s 。./bin/busybox bin/sh

cd 。.

sudo umount mnt

制作好的根文件系統(tǒng)目錄結(jié)構(gòu)如下:

2ef66354-b4c7-11eb-bf61-12bb97331649.png

如果要?jiǎng)?chuàng)建更加功能完善的Linux的根文件系統(tǒng),這里可以采用buildroot或者Yocto來(lái)進(jìn)行創(chuàng)建。

6.編譯安裝qemu可以直接安裝

sudo apt install qemu-system-misc

或者自己編譯

編譯之前需要安裝如下的庫(kù):

sudo apt-get install -y git build-essential pkg-config zlib1g-dev libglib2.0-0 libglib2.0-dev libsdl1.2-dev libpixman-1-dev libfdt-dev autoconf automake libtool librbd-dev libaio-dev flex bison make

因?yàn)橐\(yùn)行qemu

git clone git@github.com:qemu/qemu.git

cd qemu

git checkout v6.0.0

mkdir build

cd build

。./configure --prefix=/home/bigmagic/riscv/qemu --target-list=riscv32-

softmmu,riscv64-softmmu --enable-debug-tcg --enable-debug --enable-debug-info && make -j8 && make install

其中--prefix=后面的路徑是需要填寫(xiě)自己的路徑。

最后添加環(huán)境變量到自己的路徑。

export PATH=/home/bigmagic/riscv/qemu/bin/:$PATH

7.啟動(dòng)基本Linux程序事先準(zhǔn)備好編譯完成的root.bin程序以及Linux的Image

qemu-system-riscv64 -nographic -machine virt -kernel linux/arch/riscv/boot/Image -append “root=/dev/vda rw console=ttyS0” -drive file=rootfs/root.bin,format=raw,id=hd0 -device virtio-blk-device,drive=hd0

此時(shí)可以看到Linux正常的啟動(dòng)。

第一階段是OpenSBI,后面一個(gè)階段才是

Linux啟動(dòng)后,無(wú)法正常輸入命令,需要輸入

/bin/busybox --install -s

可以看到RISCV64 的 Linux正常的運(yùn)行起來(lái)了。

8.運(yùn)行發(fā)行版本OS(fedora&ubuntu)根據(jù)之前的描述,如果在buildroot中選擇了qemu_riscv64_virt_defconfig,那么最后生成的可執(zhí)行腳本如下

qemu-system-riscv64 -nographic -machine virt -kernel output/images/Image

-append “root=/dev/vda rw console=ttyS0”

-drive file=output/images/rootfs.ext2,format=raw,id=hd0

-device virtio-blk-device,drive=hd0

上述的腳本可以作為基本的參考。如果要運(yùn)行fedora,那么可以按照下面的流程進(jìn)行。

首先安裝virt-builder,可以快速構(gòu)建虛擬機(jī)環(huán)境。

sudo apt install libguestfs-tools

接下來(lái)可以添加fedora的倉(cāng)庫(kù)。

mkdir -p ~/.config/virt-builder/repos.d/

cat 《《EOF 》 ~/.config/virt-builder/repos.d/fedora-riscv.conf

[fedora-riscv]

uri=https://dl.fedoraproject.org/pub/alt/risc-v/repo/virt-builder-images/images/index

EOF

通過(guò)列出riscv64支持的發(fā)行版鏡像

8.1 下載安裝fedora鏡像

下載fedora鏡像,所有的鏡像可以在下列的網(wǎng)站中找到

https://dl.fedoraproject.org/pub/alt/risc-v/repo/virt-builder-images/images/

此時(shí)構(gòu)建一個(gè)20200108版本的鏡像。

wget https://dl.fedoraproject.org/pub/alt/risc-v/repo/virt-builder-images/images/Fedora-Developer-Rawhide-20200108.n.0-sda.raw.xz

下載完成后,解壓文件

unxz -k Fedora-Developer-Rawhide-20200108.n.0-sda.raw.xz

接著下載啟動(dòng)文件

wget https://dl.fedoraproject.org/pub/alt/risc-v/repo/virt-builder-images/images/Fedora-Developer-Rawhide-20200108.n.0-fw_payload-uboot-qemu-virt-smode.elf

執(zhí)行的腳本如下

export VER=20200108.n.0

qemu-system-riscv64 -machine virt

-nographic

-smp 4

-m 8G

-bios Fedora-Developer-Rawhide-${VER}-fw_payload-uboot-qemu-virt-smode.elf

-object rng-random,filename=/dev/urandom,id=rng0

-device virtio-rng-device,rng=rng0

-device virtio-blk-device,drive=hd0

-drive file=Fedora-Developer-Rawhide-${VER}-sda.raw,format=raw,id=hd0

-device virtio-net-device,netdev=usernet

-netdev user,id=usernet,hostfwd=tcp:22

正常情況下,啟動(dòng)信息如下:

2fc2183c-b4c7-11eb-bf61-12bb97331649.png

下面也列出了用戶名

login: riscv

password: fedora_rocks!

進(jìn)入環(huán)境后可以正常使用鏡像。

使用python

這樣就可以在RISCV的架構(gòu)上開(kāi)發(fā)應(yīng)用程序了。

8.2 下載安裝ubuntu鏡像

安裝需要的工具

sudo apt install qemu-system-misc opensbi u-boot-qemu qemu-utils

到ubuntu官網(wǎng)上看到可以下載的鏡像

http://ubuntutym2.u-toyama.ac.jp/ubuntu-dvd/20.04/release/

下載地址如下:

wget http://ubuntutym2.u-toyama.ac.jp/ubuntu-dvd/20.04/release/ubuntu-20.04.2-preinstalled-server-riscv64.img.xz

然后解壓

xz -dk ubuntu-20.04.2-preinstalled-server-riscv64.img.xz

最后可以運(yùn)行ubuntu的腳本

qemu-system-riscv64

-machine virt -nographic -m 2048 -smp 4

-bios /usr/lib/riscv64-linux-gnu/opensbi/generic/fw_jump.elf

-kernel /usr/lib/u-boot/qemu-riscv64_smode/uboot.elf

-device virtio-net-device,netdev=eth0 -netdev user,id=eth0

-drive file=ubuntu-20.04.2-preinstalled-server-riscv64.img,format=raw,if=virtio

執(zhí)行的現(xiàn)象如下:

2ff7a86c-b4c7-11eb-bf61-12bb97331649.png

登錄用戶名,密碼

username:ubuntu

password:ubuntu

然后修改新的密碼,最后可以正常進(jìn)入ubuntu。

307974aa-b4c7-11eb-bf61-12bb97331649.png

9.總結(jié)本文從頭介紹了一個(gè)riscv64上運(yùn)行完整Linux的流程,也完成fedora&ubuntu兩個(gè)發(fā)行版本的RISC-V環(huán)境搭建。

越來(lái)越多的RISCV的發(fā)新版本的適配,也充分展示了RISCV架構(gòu)生態(tài)的繁榮。

目前越來(lái)越多的發(fā)新版OS開(kāi)始慢慢適配RISCV,但是由于硬件資源和開(kāi)發(fā)板的稀缺,導(dǎo)致很多軟件生態(tài)不能實(shí)際的構(gòu)建,此時(shí)可以通過(guò)qemu來(lái)進(jìn)行實(shí)驗(yàn)。

開(kāi)發(fā)板的出現(xiàn)只是遲早的,目前D1開(kāi)發(fā)板對(duì)標(biāo)樹(shù)莓派,想必出來(lái)后也可以運(yùn)行Linux的發(fā)行版,后期可以將其適配到各種Linux的發(fā)行版本上,在其進(jìn)行軟件生態(tài)建設(shè)也是一個(gè)不錯(cuò)的平臺(tái)。

原文標(biāo)題:搭建qemu RISC-V運(yùn)行Linux環(huán)境

文章出處:【微信公眾號(hào):嵌入式IoT】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

責(zé)任編輯:haq

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • Linux
    +關(guān)注

    關(guān)注

    87

    文章

    11293

    瀏覽量

    209340
  • RISC
    +關(guān)注

    關(guān)注

    6

    文章

    462

    瀏覽量

    83711

原文標(biāo)題:搭建qemu RISC-V運(yùn)行Linux環(huán)境

文章出處:【微信號(hào):Embeded_IoT,微信公眾號(hào):嵌入式IoT】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    Linux網(wǎng)卡收包流程

    Linux 網(wǎng)卡收包流程如下 網(wǎng)卡收到數(shù)據(jù)包 將數(shù)據(jù)包從網(wǎng)卡硬件緩存移動(dòng)到服務(wù)器內(nèi)存中(DMA方式,不經(jīng)過(guò)CPU) 通過(guò)硬中斷通知CPU處理 CPU通過(guò)軟中斷通知內(nèi)核處理 經(jīng)過(guò)TCP/IP協(xié)議棧處理
    的頭像 發(fā)表于 12-05 16:21 ?186次閱讀
    <b class='flag-5'>Linux</b>網(wǎng)卡收包<b class='flag-5'>流程</b>

    【「RISC-V體系結(jié)構(gòu)編程與實(shí)踐」閱讀體驗(yàn)】-- SBI及NEMU環(huán)境

    的Hello World并運(yùn)行。 # 安裝相關(guān)工具 sudo apt install gcc-riscv64-linux-gnu # 獲取benos實(shí)驗(yàn)代碼 git clone https
    發(fā)表于 11-26 09:37

    全志T113雙核異構(gòu)處理器的使用基于Tina Linux5.0——RTOS簡(jiǎn)介

    /software/toolsbuild/slave/workspace/riscv64_build_elf_x86_64/lib-for-gcc-x86_64-linux/ --with-mpfr=/ldhome
    發(fā)表于 11-18 09:33

    國(guó)產(chǎn)Cortex-A55實(shí)驗(yàn)箱:輕松上手,人工智能環(huán)境搭建教程

    使用Miniconda3-latest-Linux-x86_64.sh)3、運(yùn)行安裝文件運(yùn)行安裝Miniconda3-latest-Linux-aarch64.sh(電腦
    的頭像 發(fā)表于 11-08 01:06 ?194次閱讀
    國(guó)產(chǎn)Cortex-A55實(shí)驗(yàn)箱:輕松上手,人工智能環(huán)境搭建教程

    在ubuntu 24.04下嘗試使用riscv64-linux-musleabi_for_x86_64-pc-linux-gnu工具鏈編譯cv1800大核出現(xiàn)報(bào)錯(cuò)的原因?

    在ubuntu 24.04下嘗試使用riscv64-linux-musleabi_for_x86_64-pc-linux-gnu工具鏈編譯cv1800大核,結(jié)果出現(xiàn)如下報(bào)錯(cuò): /home
    發(fā)表于 07-16 08:20

    spark運(yùn)行的基本流程

    前言: 由于最近對(duì)spark的運(yùn)行流程非常感興趣,所以閱讀了《Spark大數(shù)據(jù)處理:技術(shù)、應(yīng)用與性能優(yōu)化》一書(shū)。通過(guò)這本書(shū)的學(xué)習(xí),了解了spark的核心技術(shù)、實(shí)際應(yīng)用場(chǎng)景以及性能優(yōu)化的方法。本文旨在
    的頭像 發(fā)表于 07-02 10:31 ?401次閱讀
    spark<b class='flag-5'>運(yùn)行</b>的基本<b class='flag-5'>流程</b>

    使用msys2 mingw64編譯nuclei openocd源碼出錯(cuò)的原因?

    :msys64homeAdministratorbuildnuclei-riscv-openocdbuild/../src/jtag/drivers/mpsse.c:358:(.text+0xc71): undefined reference
    發(fā)表于 05-29 07:52

    Linux啟動(dòng)流程基本分析

    Linux啟動(dòng)流程總的來(lái)說(shuō)可以分成三個(gè)階段 Linux啟動(dòng)流程圖 ? 第一步:電 ?在 x86 系統(tǒng)中,將 1M 空間最上面的 0xF00
    的頭像 發(fā)表于 05-11 08:49 ?665次閱讀
    <b class='flag-5'>Linux</b>啟動(dòng)<b class='flag-5'>流程</b>基本分析

    谷歌安卓系統(tǒng)即將取消對(duì)RISC-V架構(gòu)的支持

    負(fù)責(zé)安卓Linux核心分支開(kāi)發(fā)的谷歌高級(jí)工程師向AOSP提交了一系列補(bǔ)丁,其中顯示“已去除ACK對(duì)riscv64的支持”。這些補(bǔ)丁詳細(xì)描述指出“對(duì)risc64 GKI內(nèi)核的支持已停止”。
    的頭像 發(fā)表于 04-30 15:40 ?1535次閱讀

    RISCV soft JTAG調(diào)試_v1.2

    因?yàn)槟壳败浖南拗疲?b class='flag-5'>RISCV的邏輯不能同時(shí)共用JTAG,所以如果想要同時(shí)去調(diào)試邏輯和RISCV的話,可以通過(guò)RISCV的soft Jtag來(lái)實(shí)現(xiàn)。soft Jtag就是通過(guò)GPIO來(lái)實(shí)現(xiàn)的軟件
    的頭像 發(fā)表于 04-23 08:38 ?1058次閱讀

    【LicheeRV-Nano開(kāi)發(fā)套件試用體驗(yàn)】基礎(chǔ)開(kāi)發(fā)環(huán)境

    /17時(shí)候各官方庫(kù)公布的最新版本是一樣的。下載時(shí)候記得看看版本公布時(shí)間。 官方默認(rèn)固件使用的gcc host版本為riscv64-unknown-linux-musl 對(duì)于部分不認(rèn)基礎(chǔ)環(huán)境變量的庫(kù)
    發(fā)表于 03-18 00:12

    全志D1s開(kāi)發(fā)板軟件入門(mén)之Hello World演示

    /riscv64-unknown-linux-gnu-gcc -o hello_word hello_word.c 編譯完成后會(huì)在當(dāng)前文件夾生成名為hello_word文件,這個(gè)就是可以在開(kāi)發(fā)板運(yùn)行的可執(zhí)行文件
    發(fā)表于 03-06 11:30

    RISCV soft JTAG調(diào)試_v1.1

    因?yàn)槟壳败浖南拗疲?b class='flag-5'>RISCV的邏輯不能同時(shí)共用JTAG,所以如果想要同時(shí)去調(diào)試邏輯和RISCV的話,可以通過(guò)RISCV的soft Jtag來(lái)實(shí)現(xiàn)。soft Jtag就是通過(guò)GPIO來(lái)實(shí)現(xiàn)的軟件
    的頭像 發(fā)表于 02-23 16:16 ?653次閱讀
    <b class='flag-5'>RISCV</b> soft JTAG調(diào)試_v1.1

    探索aarch64架構(gòu)使用ftrace的BPF LSM

    筆者在MacBook M2搭建Linux虛擬機(jī)上開(kāi)發(fā)eBPF程序時(shí),遇到一些LSM eBPF類(lèi)型程序無(wú)法運(yùn)行的問(wèn)題,哪怕是5.15內(nèi)核的ubuntu server,依舊無(wú)法正常運(yùn)行
    的頭像 發(fā)表于 01-25 09:30 ?724次閱讀

    linux更新了最新版本的SDK軟件后,出現(xiàn)\"/bin/sh:行1: riscv-nuclei-elf-objcopy:未找到命令\"怎么解決?

    linux更新了最新版本的SDK軟件后,執(zhí)行編譯出現(xiàn)了 riscv-nuclei-elf-objcopy -O verilog “NICE_Test.elf” “NICE_Test.verilog
    發(fā)表于 01-10 06:34
    主站蜘蛛池模板: CHINESE熟女老女人HD视频| 亚洲成人综合在线| 久久久久久久久久毛片精品美女| 99国产在线精品观看二区| 色综合色综合久久综合频道| 久久久午夜精品福利内容| 纯h超级大尺度小黄文| 在线观看国产视频| 色窝窝777欧美午夜精品影院| 久久久99精品成人片中文| 国产成人精品区在线观看| 99蜜桃在线观看免费视频网站| 亚洲 色 欧美 爱 视频 日韩| 欧美激情性AAAAA片欧美| 簧片高清在线观看| 国产精品亚洲一区二区三区久久| 91天仙tv嫩模福利| 一个人免费完整观看日本| 丝瓜视频樱桃视频在线观看免费| 欧美xxbb| 么么哒日本影院| 久久久亚洲国产精品主播| 国语自产视频在线不卡| 国产精品97久久AV麻豆| 柏木舞子在线| chinese极品嫩模videos| 制服国产欧美亚洲日韩| 亚洲欧美国产综合在线| 羞羞答答影院在线| 四虎国产一区| 天美传媒在线完整免费观看网站| 欧美最猛性XXXXX肛交| 欧美5g影院天天爽天天看| 美女被触手注入精子强制受孕漫画| 好男人好资源在线观看| 国产呦精品一区二区三区网站| 国产高清视频在线观看97| 国产GV无码A片在线观看 | 蜜芽一二三区| 美女扒开腿让男人桶个爽| 绿巨人www|