• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    Cortex-A8的Bootloader設(shè)計與實現(xiàn)※

    2015-07-03 03:33:42葉茂李智任和
    關(guān)鍵詞:源文件源碼環(huán)境變量

    葉茂,李智,任和

    (四川大學(xué) 電子信息學(xué)院,成都610064)

    引 言

    隨著電子行業(yè)日新月異的發(fā)展,ARM處理器憑借自身高性能、低成本、低功耗等特點,廣泛應(yīng)用于消費電子、數(shù)字家電、工業(yè)生產(chǎn)等領(lǐng)域中[1]。Cortex-A8為Cortex系列中的“A”系列,采用ARM v7架構(gòu),主要面向搭載操作系統(tǒng)、高性能的應(yīng)用領(lǐng)域。Bootloader是系統(tǒng)上電后執(zhí)行的第一段代碼,其功能類似于電腦的BIOS[2]。簡單來說,Bootloader的工作主要有兩點:其一是初始化底層硬件資源,為操作系統(tǒng)啟動提供必要的環(huán)境;其二是從存儲設(shè)備中讀取操作系統(tǒng)鏡像并啟動[3-4]。但為了方便后期開發(fā),往往要為Bootloader添加其他的功能,如支持串口打印調(diào)試信息、NFS網(wǎng)絡(luò)下載、根文件系統(tǒng)燒寫等[5]。本文以u-boot-2013.01為源碼包,設(shè)計了一個基于S5PV210平臺,功能齊全且高效穩(wěn)定的Bootloader。

    1 硬件平臺

    1.1 S5PV210簡介

    S5PV210是三星公司推出的一款基于Cortex-A8架構(gòu)的高性能應(yīng)用處理器。該處理器支持ARM v7指令集,具有32位內(nèi)部總線結(jié)構(gòu),主頻最高可達(dá)1 GHz,另外還支持掛接LPDDR1、LPDDR2和DDR2類型的RAM,F(xiàn)lash方面可選擇NAND Flash或NOR Flash等。不僅如此,該處理器還提供了包括串口、LCD、I2C、SPI、USB、HDMI等豐富的外部接口資源。目前S5PV210已經(jīng)廣泛應(yīng)用于智能手機(jī)和平板電腦之中。

    1.2 S5PV210的啟動方式

    S5PV210支持多種啟動方式,啟動流程如圖1所示。

    圖1 S5PV210的啟動流程

    S5PV210的啟動過程由BL0、BL1和BL2(BL為Bootloader的簡稱)3部分代碼實現(xiàn),其中BL0在出廠時已經(jīng)被固化到64 KB的iROM中。S5PV210上電后首先執(zhí)行BL0,該段代碼主要負(fù)責(zé)一些簡單的初始化工作,如關(guān)看門狗、初始化ICache等;然后BL0會根據(jù)硬件設(shè)置判斷使用何種方式啟動,并將BL1從啟動設(shè)備(OneNand、Nand Flash、USB、UART、SD card等)拷貝到Internal SRAM的BL1區(qū)中;最后BL0會比較一個校驗值,如果相等則跳轉(zhuǎn)到BL1中繼續(xù)執(zhí)行,否則轉(zhuǎn)入其他啟動方式。該校驗值存在于BL1的頭部,大小為16字節(jié)。

    開發(fā)人員一般會單獨編寫一個工具為BL1編譯出的二進(jìn)制文件添加頭部。其校驗值(checksum)的計算方法如下:

    由于BL1的大小被限制為16 KB,所以一般情況下BL1負(fù)責(zé)的工作也不多。BL1被執(zhí)行后首先初始化系統(tǒng)時鐘、內(nèi)存、串口等,然后將BL2代碼拷貝到Internal SRAM的BL2區(qū)中并跳轉(zhuǎn)執(zhí)行。實際上SRAM的BL2區(qū)的大小只有80 KB,但很多情況下BL2代碼的大小遠(yuǎn)遠(yuǎn)超過80 KB,所以將BL2代碼拷貝到SRAM中意義不大。更好的做法是直接將BL2拷貝到容量更大的內(nèi)存中,不過在拷貝之前一定要先初始化好系統(tǒng)時鐘和內(nèi)存。BL2是整個Bootloader的主體部分,因此它需要完成更多的初始化工作,例如初始化網(wǎng)卡、Flash等,之后BL2讀取操作系統(tǒng)鏡像到內(nèi)存中運行。一般把操作系統(tǒng)鏡像放到Flash上,也可以放到SD卡上,根據(jù)具體的開發(fā)平臺而定。

    2 軟件平臺

    2.1 U-Boot介紹

    U-Boot(全稱 Universal Bootloader)是Bootloader的一種,其他常見的Bootloader還有RedBoot、vivi等。與它們相比,U-Boot具有代碼開源、可靠性和擴(kuò)展性較高等優(yōu)點。另外,對于類似于Nand Flash、Nor Flash、網(wǎng)卡、LCD等硬件資源,U-Boot已經(jīng)抽象出與硬件平臺無關(guān)的代碼作為設(shè)備驅(qū)動源碼提供給開發(fā)者。對于與硬件平臺相關(guān)的代碼,U-Boot將其定義成宏并保留在配置文件中,開發(fā)者往往只需要修改這些宏的值就能成功使用這些硬件資源,讓移植工作變得十分簡單。

    2.2 U-Boot中幾個比較重要的源文件

    U-Boot的源碼包含有上千個源文件,但經(jīng)過分析之后,可以找出如下幾個比較重要的源文件(括號中為該源文件所在源碼包的位置):

    (1)start.S(arch\arm\cpu\armv7\start.S)

    通過分析U-Boot的鏈接文件可以發(fā)現(xiàn),start.S是UBoot上電后執(zhí)行的第一個源文件。該源文件包括定義了異常向量入口、相關(guān)的全局變量、禁用L2緩存、關(guān)閉MMU等,之后跳轉(zhuǎn)到lowlevel_init()函數(shù)中繼續(xù)執(zhí)行。

    (2)lowlevel_init.S(board\samsung\smdkv210\lowlevel_init.S)

    該源文件用匯編代碼編寫,其中只定義了一個函數(shù)lowlevel_init()。該函數(shù)實現(xiàn)對平臺硬件資源的一系列初始化過程,包括關(guān)看門狗、初始化系統(tǒng)時鐘、內(nèi)存和串口。

    (3)mem_setup.S(board\samsung\smdkv210)

    該源文件包含對內(nèi)存進(jìn)行初始化的匯編源碼。

    (4)board.c(arch\arm\lib\board.c)

    該源文件是用C語言編寫的,主要實現(xiàn)了U-Boot第二階段啟動過程,包括初始化環(huán)境變量、串口控制臺、Flash和打印調(diào)試信息等,最后調(diào)用main_loop()函數(shù)。

    (5)smdkv210.h(include\configs\Smdkv210.h)

    S5PV210平臺的配置文件,該源文件定義了一些與CPU或者外設(shè)相關(guān)的參數(shù),這些參數(shù)都是用宏來定義的。

    2.3 U-Boot啟動的一般流程

    2.3.1 第一階段初始化

    U-Boot的啟動過程分為兩個階段:第一階段主要由匯編代碼實現(xiàn),負(fù)責(zé)對CPU及底層硬件資源的初始化;第二階段用C語言實現(xiàn),負(fù)責(zé)使能Flash、網(wǎng)卡和引導(dǎo)操作系統(tǒng)等。第一階段啟動流程如圖2所示。

    圖2 U-Boot第一階段啟動流程

    上電后,U-Boot首先會設(shè)置CPU為管理模式、禁用L1緩存、關(guān)閉MMU和清除Caches,之后調(diào)用底層初始化函數(shù)lowlevel_init()。該函數(shù)實現(xiàn)略——編者注。

    初始化完成之后,U-Boot首先調(diào)用一個拷貝函數(shù)將BL2拷貝到內(nèi)存地址為0x 3FF0 0000處,然后跳轉(zhuǎn)到該位置執(zhí)行BL2。在U-Boot中,BL1和BL2是基于相同的一些源文件編譯生成的。開發(fā)者在編寫代碼時需要使用預(yù)編譯宏CONFIG_SPL_BUILD來實現(xiàn)BL1和BL2不同的功能。其拷貝函數(shù)實現(xiàn)略——編者注。

    2.3.2 第二階段初始化

    進(jìn)入第二階段后,U-Boot首先聲明一個gd_t結(jié)構(gòu)體類型的指針指向內(nèi)存地址(0x 4000 0000~GD_SIZE)處。0x 4000 0000為內(nèi)存結(jié)束地址,GD_SIZE為結(jié)構(gòu)體gd_t的大小,這樣相當(dāng)于在內(nèi)存最頂端分配了一段空間用于存放一個臨時結(jié)構(gòu)體gd_t。該結(jié)構(gòu)體在global_data.h中被定義,U-Boot用它來存儲所有的全局變量。之后U-Boot會調(diào)用board_init_f()和board_init_r()兩個函數(shù)進(jìn)一步對底板進(jìn)行初始化。

    (1)board_init_f()

    進(jìn)入board_init_f()之后,U-Boot首先設(shè)置之前分配的臨時結(jié)構(gòu)體,然后開始劃分內(nèi)存空間,其內(nèi)存分配狀態(tài)如圖3所示。

    圖3 U-Boot內(nèi)存分配狀態(tài)

    從圖3中可以看到,gd指針指向的臨時結(jié)構(gòu)體存放在內(nèi)存的最頂部。BL2代碼存放在內(nèi)存地址0x 3ff0 0000處,即距離內(nèi)存頂部1 MB空間的位置,接下來依次分配malloc空間、bd_t結(jié)構(gòu)體空間和gd_t結(jié)構(gòu)體空間,并且重新設(shè)置棧,最后將臨時結(jié)構(gòu)體拷貝到ID指針?biāo)赶虻奈恢?。board_init_f()實現(xiàn)過程略——編者注。

    (2)board_init_r()

    board_init_r()負(fù)責(zé)對其他硬件資源進(jìn)行初始化,如網(wǎng)卡、Flash、MMC、中斷等,最后調(diào)用 main_loop(),等待用戶輸入命令。

    3 設(shè)計實現(xiàn)

    3.1 支持Nand Flash讀寫

    Nand Flash是嵌入式系統(tǒng)中重要的存儲設(shè)備,存儲對象包括Bootloader、操作系統(tǒng)內(nèi)核、環(huán)境變量、根文件系統(tǒng)等,所以使能Nand Flash讀寫是U-Boot移植過程中必須完成的一個步驟。U-Boot中Nand Flash初始化函數(shù)調(diào)用關(guān)系為:board_init_r()->nand_init()->nand_init_chip()->board_nand_init()。

    board_nand_init()完成兩件事:①對S5PV210關(guān)于Nand Flash控制器的相關(guān)寄存器進(jìn)行設(shè)置。②對nand_chip結(jié)構(gòu)體進(jìn)行設(shè)置。需要設(shè)置的成員項有IO_ADDR_R和IO_ADDR_W,這兩個成員都指向地址0x B0E0 0010,即Nand Flash控制器的數(shù)據(jù)寄存器的地址。此外還需要實現(xiàn)以下3個成員函數(shù):

    ①void(*select_chip)(struct mtd_info*mtd,int chip);

    該函數(shù)實現(xiàn)Nand Flash設(shè)備選中或取消選中。

    ②void(*cmd_ctrl)(struct mtd_info *mtd,int dat,unsigned int ctrl);

    該函數(shù)實現(xiàn)對Nand Flash發(fā)送命令或者地址。

    ③int(*dev_ready)(struct mtd_info*mtd);

    該函數(shù)實現(xiàn)檢測Nand Flash設(shè)備狀態(tài)。最后將成員ecc.mode設(shè)置為NAND_ECC_SOFT,即ECC軟件校驗。

    配置文件中相應(yīng)的宏定義略——編者注。

    3.2 支持網(wǎng)卡

    支持NFS或TFTP網(wǎng)絡(luò)下載會極大地方便從Linux服務(wù)器上下載文件或鏡像到硬件平臺上,所以使能網(wǎng)卡在U-Boot移植過程中就顯得非常重要。以網(wǎng)卡DM9000為例,U-Boot已經(jīng)抽象出一套完整的關(guān)于DM9000的驅(qū)動代碼(其源碼路徑為drivers\net\dm9000x.c),用戶只需要根據(jù)具體的硬件電路配置相應(yīng)的宏即可。U-Boot中DM9000網(wǎng)卡初始化函數(shù)的調(diào)用關(guān)系為:board_init_r()->eth_initialize()->board_eth_init()->dm9000_initialize()。

    配置文件中相應(yīng)的宏定義略——編者注。

    3.3 支持環(huán)境變量的保存和修改

    為了方便用戶配置,U-Boot將一部分變量,如串口波特率、IP地址、內(nèi)核參數(shù)、啟動命令等存在Flash或SD卡上,這部分?jǐn)?shù)據(jù)稱為環(huán)境變量。每次上電啟動時,U-Boot會檢查Flash或SD卡上是否存放有環(huán)境變量。如果有則將其讀取出來并使用,如果沒有就使用默認(rèn)的環(huán)境變量。默認(rèn)的環(huán)境變量定義在env_default.h中,用戶也可以隨時修改或保存環(huán)境變量到Flash或SD卡中。

    環(huán)境變量的移植非常簡單。以Nand Flash為例,開發(fā)人員在smdkv210.h源文件中只需要添加如下的宏定義:

    4 測試結(jié)果

    4.1 測試U-Boot啟動

    測試平臺的軟硬件環(huán)境:硬件平臺為友善之臂的smart210開發(fā)板;Linux服務(wù)器版本為ubuntu9.0;U-Boot版本為2013-01;GCC交叉編譯工具鏈版本為4.3.2。

    首先將修改后的源碼包放到裝有交叉編譯工具鏈的Linux服務(wù)器上,輸入命令make即可以編譯生成兩個二進(jìn)制文件。一個是smdkv210-spl.bin,即BL1代碼,存放在spl目錄下;另一個是u-boot.bin,即BL2代碼,存放在頂層目錄下。然后插入SD卡,執(zhí)行write2sd.sh腳本就可以把BL1和BL2分別燒寫到SD卡的第1扇區(qū)和第49扇區(qū)。write2sd.sh腳本實現(xiàn)如下:

    燒寫完成之后將SD卡插入到smart210開發(fā)板的SD卡槽中,連接好串口和網(wǎng)線,上電啟動。通過串口工具(本次測試使用的是SecureCRT)看到輸出信息,即表示該UBoot已經(jīng)成功運行在開發(fā)板上,測試U-Boot啟動圖略——編者注。

    4.2 測試Nand Flash和網(wǎng)卡

    在等待命令狀態(tài)下輸入“nfs 20000000 192.168.1.123:/work/nfs_root/uImage”,該命令表示從IP為192.168.1.123的Linux服務(wù)器上,通過NFS下載該服務(wù)器上“/work/nfs_root”目錄下的uImage,并存放在內(nèi)存地址為0x 2000 0000處,uImage為適配于S5PV210開發(fā)板的Linux內(nèi)核鏡像。等待一段時間后看到“Bytes transferred=2127008(2074a0 hex)”字樣,表示下載成功。

    下載成功之后輸入命令“nand erase.part kernel”,該命令表示擦除Nand Flash上的kernel分區(qū)。接著輸入命令“nand write 2000 0000 kernel”,該命令表示拷貝內(nèi)存地址為0x 2000 0000的內(nèi)容,燒寫到Nand Flash的kernel分區(qū)中。內(nèi)存地址0x 2000 0000存放的內(nèi)容正是之前從Linux服務(wù)器上下載下來的uImage。kernel保存在環(huán)境變量mtdparts中,kernel規(guī)定了該分區(qū)的起始地址和大小。執(zhí)行完這兩條命令后看到“4194304 bytes written:OK”字樣,表示系統(tǒng)內(nèi)核已經(jīng)成功燒寫到Nand Flash中,證明了Nand Flash和網(wǎng)卡均可以正常使用。其實驗結(jié)果略——編者注。

    4.3 測試引導(dǎo)內(nèi)核啟動

    燒寫完內(nèi)核之后執(zhí)行boot命令就可以啟動該內(nèi)核。boot命令實際上是執(zhí)行環(huán)境變量bootcmd中的一條語句,其內(nèi)容為“nand read 2000 0000 kernel;bootm 20000000”,該語句表示從Nand Flash的kernel分區(qū)中讀出內(nèi)核并存放在內(nèi)存地址為0x 2000 0000處,然后跳轉(zhuǎn)在該地址執(zhí)行內(nèi)核鏡像。啟動過程中可以看到串口打印出的信息,證明了該U-Boot已經(jīng)成功支持引導(dǎo)Linux操作系統(tǒng)。測試引導(dǎo)內(nèi)核啟動圖略——編者注。

    結(jié) 語

    本文首先從硬件和軟件兩個方面分析了S5PV210的特性及啟動方式,然后通過u-boot-2013.01源碼包詳細(xì)闡述了U-Boot啟動過程中的兩個階段,最后結(jié)合smart210開發(fā)板成功設(shè)計了一個基于SD卡啟動、多功能的Bootloader。測試結(jié)果表明,該Bootloader支持Nand Flash讀寫、NFS網(wǎng)絡(luò)下載、環(huán)境變量保存和修改等功能,為后期開發(fā)帶來了極大的便利。

    編者注:本文為期刊縮略版,全文見本刊網(wǎng)站www.mesnet.com.cn。

    [1]馮林琳,耿恒山.基于S3C6410的Uboot分析與移植[J].計算機(jī)與現(xiàn)代化,2013(1):119-121.

    [2]王茜.基于ARM的平板電腦硬件平臺設(shè)計[J].微型機(jī)與應(yīng)用,2012(22):29-31.

    [3]梁超,楊峰,雷鵬,等.U-Boot SD卡啟動方式的移植分析與功能擴(kuò)展[J].現(xiàn)代電子技術(shù),2013(20):84-86,90.

    [4]張健,周書林,朱文靜.基于硬件抽象層的Bootloader研究與實現(xiàn)[J].現(xiàn)代電子技術(shù),2010(8):38-40.

    [5]郭鋒,袁國良,王麗芳.嵌入式Linux引導(dǎo)加載程序分析與設(shè)計[J].信息技術(shù),2011(11):123-125.

    猜你喜歡
    源文件源碼環(huán)境變量
    基于最大熵模型的云南思茅松潛在分布區(qū)
    基于網(wǎng)頁源碼結(jié)構(gòu)理解的自適應(yīng)爬蟲代碼生成方法
    基于圖神經(jīng)網(wǎng)絡(luò)的軟件源碼漏洞檢測方法
    企業(yè)如何保護(hù)源碼
    從桌面右鍵菜單調(diào)用環(huán)境變量選項
    徹底弄懂Windows 10環(huán)境變量
    網(wǎng)絡(luò)社區(qū)劃分在軟件質(zhì)量問題分析中的應(yīng)用
    基于源文件可疑度的軟件缺陷定位方法研究
    LKJ基礎(chǔ)數(shù)據(jù)源文件自動編制系統(tǒng)的研究
    基于數(shù)據(jù)結(jié)構(gòu)教輔系統(tǒng)的實驗課程改革
    又黄又爽又免费观看的视频| netflix在线观看网站| 日韩欧美免费精品| 特级一级黄色大片| 国产成人aa在线观看| 国产精品av视频在线免费观看| 欧美3d第一页| 亚洲成人国产一区在线观看| 免费在线观看视频国产中文字幕亚洲| 十八禁人妻一区二区| 99re在线观看精品视频| 日本一本二区三区精品| or卡值多少钱| 狂野欧美激情性xxxx| 精品人妻1区二区| 欧美精品啪啪一区二区三区| 制服丝袜大香蕉在线| av中文乱码字幕在线| 看黄色毛片网站| 给我免费播放毛片高清在线观看| 日韩精品中文字幕看吧| 日本一区二区免费在线视频| 精品国产美女av久久久久小说| 高潮久久久久久久久久久不卡| 黄色视频,在线免费观看| 欧美一区二区精品小视频在线| 欧美日韩亚洲国产一区二区在线观看| 久久亚洲精品不卡| 精品福利观看| 国产亚洲精品久久久久5区| 午夜成年电影在线免费观看| 亚洲精品色激情综合| 一本精品99久久精品77| 这个男人来自地球电影免费观看| 成人一区二区视频在线观看| 国模一区二区三区四区视频 | 18禁美女被吸乳视频| 日本免费一区二区三区高清不卡| 久久久久久久久免费视频了| 精华霜和精华液先用哪个| 少妇被粗大的猛进出69影院| 久久久精品大字幕| 久久精品综合一区二区三区| 嫩草影视91久久| 丁香六月欧美| 俺也久久电影网| av超薄肉色丝袜交足视频| 一区二区三区高清视频在线| 国产亚洲精品一区二区www| 久久草成人影院| 免费人成视频x8x8入口观看| 国产免费av片在线观看野外av| 午夜日韩欧美国产| 久久久久国内视频| 国产精品一及| 日日爽夜夜爽网站| 一个人观看的视频www高清免费观看 | 白带黄色成豆腐渣| 日韩欧美在线二视频| av欧美777| 婷婷精品国产亚洲av| 国产精品美女特级片免费视频播放器 | 亚洲九九香蕉| 欧美在线黄色| 午夜两性在线视频| 可以在线观看毛片的网站| 久久久久性生活片| 亚洲七黄色美女视频| 婷婷精品国产亚洲av在线| 亚洲自偷自拍图片 自拍| 18禁黄网站禁片午夜丰满| 国产精品影院久久| 欧美绝顶高潮抽搐喷水| 免费在线观看日本一区| 久久草成人影院| 日韩高清综合在线| 在线观看美女被高潮喷水网站 | 欧美黄色片欧美黄色片| 神马国产精品三级电影在线观看 | 欧美日韩黄片免| 欧美最黄视频在线播放免费| 欧美丝袜亚洲另类 | 亚洲片人在线观看| 黑人巨大精品欧美一区二区mp4| 日日夜夜操网爽| 日本撒尿小便嘘嘘汇集6| 久久久久九九精品影院| 午夜亚洲福利在线播放| 五月玫瑰六月丁香| 神马国产精品三级电影在线观看 | 国产精品久久久久久久电影 | 国内精品一区二区在线观看| √禁漫天堂资源中文www| 一级作爱视频免费观看| 亚洲av第一区精品v没综合| 欧美午夜高清在线| 精品久久久久久,| 好男人电影高清在线观看| 亚洲专区字幕在线| 国产午夜精品论理片| 国内精品久久久久精免费| 久久精品91无色码中文字幕| 日日干狠狠操夜夜爽| 草草在线视频免费看| netflix在线观看网站| 日本在线视频免费播放| 欧美人与性动交α欧美精品济南到| 国产av不卡久久| 亚洲乱码一区二区免费版| av福利片在线观看| 久久 成人 亚洲| 国产区一区二久久| 免费看十八禁软件| 麻豆av在线久日| 国模一区二区三区四区视频 | 日本精品一区二区三区蜜桃| 精品福利观看| 看片在线看免费视频| 特大巨黑吊av在线直播| 一本一本综合久久| 在线观看www视频免费| xxx96com| 午夜成年电影在线免费观看| 国产欧美日韩一区二区精品| 成在线人永久免费视频| 午夜福利欧美成人| 午夜两性在线视频| 成人永久免费在线观看视频| 两个人看的免费小视频| 欧美色欧美亚洲另类二区| 久久精品91无色码中文字幕| 久久久水蜜桃国产精品网| 久久国产乱子伦精品免费另类| 久久精品国产综合久久久| √禁漫天堂资源中文www| 久久久精品国产亚洲av高清涩受| 国产精品av久久久久免费| 美女午夜性视频免费| 国产精品久久久久久久电影 | 亚洲无线在线观看| 国内揄拍国产精品人妻在线| 久久精品人妻少妇| 亚洲第一电影网av| 欧美zozozo另类| or卡值多少钱| 一a级毛片在线观看| 国产男靠女视频免费网站| 12—13女人毛片做爰片一| 两性午夜刺激爽爽歪歪视频在线观看 | 91成年电影在线观看| 一区福利在线观看| 亚洲乱码一区二区免费版| 欧美精品亚洲一区二区| 国产99久久九九免费精品| 桃色一区二区三区在线观看| 国产精品美女特级片免费视频播放器 | 丝袜人妻中文字幕| 草草在线视频免费看| 精华霜和精华液先用哪个| 国产精品一区二区三区四区免费观看 | 观看免费一级毛片| 久久这里只有精品19| 99热6这里只有精品| 亚洲欧美精品综合久久99| 久久人妻av系列| 久久久久精品国产欧美久久久| 欧美久久黑人一区二区| 色尼玛亚洲综合影院| 亚洲第一欧美日韩一区二区三区| 国产真实乱freesex| 欧美黑人精品巨大| 女人高潮潮喷娇喘18禁视频| 欧美一级毛片孕妇| 成在线人永久免费视频| 国产真人三级小视频在线观看| 日韩欧美精品v在线| 久久久久久九九精品二区国产 | 9191精品国产免费久久| 日本三级黄在线观看| 国产成人一区二区三区免费视频网站| 久久性视频一级片| 国产精品一及| 在线永久观看黄色视频| 国产av一区二区精品久久| 国产91精品成人一区二区三区| 黄色成人免费大全| 亚洲欧美激情综合另类| 国产精品一区二区精品视频观看| 日韩欧美国产在线观看| 欧美一级毛片孕妇| 免费在线观看成人毛片| 给我免费播放毛片高清在线观看| 一本久久中文字幕| 国产精品av久久久久免费| 国产精品日韩av在线免费观看| 午夜a级毛片| 久久精品人妻少妇| 亚洲精品在线美女| 日本成人三级电影网站| 三级男女做爰猛烈吃奶摸视频| 老司机深夜福利视频在线观看| 啦啦啦韩国在线观看视频| 色av中文字幕| 久久草成人影院| 国产精品美女特级片免费视频播放器 | 日韩欧美免费精品| 久久精品影院6| 1024香蕉在线观看| 婷婷六月久久综合丁香| 日韩欧美精品v在线| 久久久久免费精品人妻一区二区| 免费观看精品视频网站| 国产日本99.免费观看| 别揉我奶头~嗯~啊~动态视频| 久久久久国内视频| 19禁男女啪啪无遮挡网站| 男女做爰动态图高潮gif福利片| 丰满的人妻完整版| 99久久精品热视频| 一区二区三区激情视频| 日韩欧美在线乱码| 天堂av国产一区二区熟女人妻 | 在线观看午夜福利视频| 一边摸一边抽搐一进一小说| 精品久久久久久久末码| 在线观看美女被高潮喷水网站 | 黑人巨大精品欧美一区二区mp4| 日韩欧美国产一区二区入口| 欧美在线黄色| 久久天堂一区二区三区四区| 一个人免费在线观看的高清视频| 母亲3免费完整高清在线观看| 一级作爱视频免费观看| 很黄的视频免费| 国产片内射在线| 欧美性长视频在线观看| 日韩欧美 国产精品| 国产蜜桃级精品一区二区三区| 日本免费a在线| 久久久久九九精品影院| 很黄的视频免费| 制服人妻中文乱码| 级片在线观看| 成人精品一区二区免费| 夜夜看夜夜爽夜夜摸| av中文乱码字幕在线| 90打野战视频偷拍视频| 91成年电影在线观看| 日韩高清综合在线| 成年免费大片在线观看| 最近最新中文字幕大全电影3| 亚洲av片天天在线观看| 777久久人妻少妇嫩草av网站| 又粗又爽又猛毛片免费看| 一区福利在线观看| 精华霜和精华液先用哪个| 亚洲男人天堂网一区| 亚洲精品美女久久av网站| 国产黄a三级三级三级人| 哪里可以看免费的av片| 国产精品日韩av在线免费观看| 国产一区二区在线av高清观看| 亚洲中文av在线| 亚洲精品国产精品久久久不卡| 99在线人妻在线中文字幕| 久久久水蜜桃国产精品网| or卡值多少钱| 女生性感内裤真人,穿戴方法视频| 长腿黑丝高跟| 亚洲精品国产精品久久久不卡| 嫩草影视91久久| 免费看a级黄色片| 999久久久精品免费观看国产| 在线视频色国产色| 久久人人精品亚洲av| 一级a爱片免费观看的视频| av中文乱码字幕在线| 国产亚洲av高清不卡| 亚洲欧美激情综合另类| 一本一本综合久久| 成人手机av| 亚洲一卡2卡3卡4卡5卡精品中文| 男人的好看免费观看在线视频 | 视频区欧美日本亚洲| 免费观看人在逋| a级毛片在线看网站| 亚洲七黄色美女视频| а√天堂www在线а√下载| 叶爱在线成人免费视频播放| 一边摸一边抽搐一进一小说| 欧美日韩福利视频一区二区| 免费看十八禁软件| 一进一出抽搐动态| 亚洲人成电影免费在线| 成人国语在线视频| 欧美大码av| 欧美黄色淫秽网站| 日本一本二区三区精品| 亚洲国产欧美网| 免费在线观看视频国产中文字幕亚洲| 久久久久免费精品人妻一区二区| 国内精品一区二区在线观看| 亚洲欧美精品综合一区二区三区| 亚洲欧美精品综合一区二区三区| 999精品在线视频| www.自偷自拍.com| 国产一区二区在线观看日韩 | 久久久久久亚洲精品国产蜜桃av| 国产成人啪精品午夜网站| 精品第一国产精品| 制服人妻中文乱码| 黄色a级毛片大全视频| 精品日产1卡2卡| 国产人伦9x9x在线观看| 看片在线看免费视频| 一区二区三区国产精品乱码| 亚洲精品av麻豆狂野| 人人妻人人看人人澡| 超碰成人久久| 亚洲电影在线观看av| 欧美又色又爽又黄视频| av天堂在线播放| 一区福利在线观看| 麻豆国产97在线/欧美 | 国产午夜精品久久久久久| 精品久久久久久久毛片微露脸| 少妇裸体淫交视频免费看高清 | 精品少妇一区二区三区视频日本电影| 欧洲精品卡2卡3卡4卡5卡区| 亚洲av中文字字幕乱码综合| 亚洲欧美日韩东京热| 日本成人三级电影网站| 午夜免费成人在线视频| 超碰成人久久| 999久久久精品免费观看国产| 丁香欧美五月| 欧美黑人欧美精品刺激| 久久久久久大精品| 精品久久久久久久末码| 国产亚洲欧美98| 50天的宝宝边吃奶边哭怎么回事| 熟妇人妻久久中文字幕3abv| 精品少妇一区二区三区视频日本电影| 欧美又色又爽又黄视频| 麻豆久久精品国产亚洲av| 久久这里只有精品19| 啪啪无遮挡十八禁网站| 久久精品aⅴ一区二区三区四区| av免费在线观看网站| 777久久人妻少妇嫩草av网站| 精品高清国产在线一区| 蜜桃久久精品国产亚洲av| 日日摸夜夜添夜夜添小说| 老司机深夜福利视频在线观看| 国产激情欧美一区二区| 亚洲中文字幕一区二区三区有码在线看 | 啦啦啦观看免费观看视频高清| 一本精品99久久精品77| 女人爽到高潮嗷嗷叫在线视频| 亚洲av成人不卡在线观看播放网| 国产一区二区三区在线臀色熟女| 少妇的丰满在线观看| 国产精品乱码一区二三区的特点| 18禁黄网站禁片免费观看直播| 精品免费久久久久久久清纯| 法律面前人人平等表现在哪些方面| av福利片在线观看| 精品乱码久久久久久99久播| 午夜免费激情av| 观看免费一级毛片| 精品国产亚洲在线| 国产欧美日韩精品亚洲av| 99热6这里只有精品| 麻豆成人av在线观看| 99精品欧美一区二区三区四区| 免费在线观看黄色视频的| 国产精品野战在线观看| 91字幕亚洲| 午夜亚洲福利在线播放| √禁漫天堂资源中文www| 法律面前人人平等表现在哪些方面| 少妇熟女aⅴ在线视频| 女人高潮潮喷娇喘18禁视频| 性色av乱码一区二区三区2| 亚洲avbb在线观看| 欧美绝顶高潮抽搐喷水| 国产又色又爽无遮挡免费看| 老鸭窝网址在线观看| 亚洲天堂国产精品一区在线| 亚洲国产高清在线一区二区三| 日韩欧美一区二区三区在线观看| av超薄肉色丝袜交足视频| 级片在线观看| 三级国产精品欧美在线观看 | 国产精品影院久久| 欧美性猛交╳xxx乱大交人| 特大巨黑吊av在线直播| 国产精品98久久久久久宅男小说| 免费av毛片视频| 成人av在线播放网站| 日日爽夜夜爽网站| 女人高潮潮喷娇喘18禁视频| 欧美一区二区国产精品久久精品 | 国产亚洲欧美98| 国内精品一区二区在线观看| 国产精品久久久人人做人人爽| 久9热在线精品视频| 中文资源天堂在线| 国产一区二区在线观看日韩 | 50天的宝宝边吃奶边哭怎么回事| 少妇粗大呻吟视频| 久久中文看片网| 国产亚洲精品综合一区在线观看 | 欧美日韩精品网址| 少妇人妻一区二区三区视频| 色播亚洲综合网| 黑人欧美特级aaaaaa片| 少妇粗大呻吟视频| 国产精品自产拍在线观看55亚洲| www国产在线视频色| 国产精品99久久99久久久不卡| 黄片小视频在线播放| 国产熟女午夜一区二区三区| 亚洲成av人片在线播放无| 国产又色又爽无遮挡免费看| 桃红色精品国产亚洲av| 日日夜夜操网爽| 亚洲乱码一区二区免费版| 色播亚洲综合网| 久久久精品大字幕| 国产av在哪里看| 色播亚洲综合网| 成人国产一区最新在线观看| 制服人妻中文乱码| 精品国产超薄肉色丝袜足j| 欧美一区二区国产精品久久精品 | 久久久久国产一级毛片高清牌| 久久国产精品影院| 男女床上黄色一级片免费看| 午夜老司机福利片| 国产精品1区2区在线观看.| 久久婷婷人人爽人人干人人爱| 久久久久国内视频| 午夜日韩欧美国产| 欧美黑人精品巨大| 欧美日韩福利视频一区二区| 中文资源天堂在线| 黄色女人牲交| 亚洲人成电影免费在线| 香蕉久久夜色| 欧美午夜高清在线| 18禁黄网站禁片午夜丰满| 成人高潮视频无遮挡免费网站| 精品国产美女av久久久久小说| 女警被强在线播放| 老熟妇乱子伦视频在线观看| 99在线人妻在线中文字幕| 首页视频小说图片口味搜索| 精品国产亚洲在线| 中文字幕熟女人妻在线| 亚洲欧洲精品一区二区精品久久久| 国产爱豆传媒在线观看 | 50天的宝宝边吃奶边哭怎么回事| 国产男靠女视频免费网站| 一本一本综合久久| 国产精品99久久99久久久不卡| 午夜福利免费观看在线| 成人18禁在线播放| 免费看a级黄色片| 国产精华一区二区三区| 91九色精品人成在线观看| 五月玫瑰六月丁香| 丰满人妻熟妇乱又伦精品不卡| 人人妻,人人澡人人爽秒播| cao死你这个sao货| 久久 成人 亚洲| 久久这里只有精品中国| bbb黄色大片| 三级男女做爰猛烈吃奶摸视频| 国产精品爽爽va在线观看网站| www.熟女人妻精品国产| 97碰自拍视频| 一边摸一边抽搐一进一小说| 国产亚洲精品av在线| 欧美乱色亚洲激情| av欧美777| 99久久国产精品久久久| 一二三四在线观看免费中文在| 很黄的视频免费| 日本成人三级电影网站| 精品久久久久久久毛片微露脸| 精品久久久久久久久久久久久| 亚洲av成人不卡在线观看播放网| 一级片免费观看大全| 亚洲欧洲精品一区二区精品久久久| 国产精品久久久久久亚洲av鲁大| 久久精品成人免费网站| 人人妻人人看人人澡| 国产精品久久久久久精品电影| 国产日本99.免费观看| 动漫黄色视频在线观看| 日日干狠狠操夜夜爽| 黄色丝袜av网址大全| 亚洲美女视频黄频| 精品欧美一区二区三区在线| 亚洲全国av大片| av超薄肉色丝袜交足视频| 9191精品国产免费久久| 在线永久观看黄色视频| 欧美日韩福利视频一区二区| 欧美 亚洲 国产 日韩一| 亚洲乱码一区二区免费版| 国产精品 国内视频| 黄色a级毛片大全视频| 精品电影一区二区在线| 18美女黄网站色大片免费观看| 国产精品电影一区二区三区| 亚洲一区二区三区色噜噜| 免费看美女性在线毛片视频| 欧美成人免费av一区二区三区| 欧美一区二区精品小视频在线| 午夜福利免费观看在线| 三级毛片av免费| 国产精品免费视频内射| 一个人免费在线观看的高清视频| 91麻豆av在线| 每晚都被弄得嗷嗷叫到高潮| 亚洲aⅴ乱码一区二区在线播放 | 成年女人毛片免费观看观看9| 每晚都被弄得嗷嗷叫到高潮| 丝袜人妻中文字幕| 久久精品国产综合久久久| 国产真人三级小视频在线观看| 久久久精品国产亚洲av高清涩受| 亚洲精品一卡2卡三卡4卡5卡| 亚洲性夜色夜夜综合| 亚洲国产中文字幕在线视频| 悠悠久久av| 亚洲精品中文字幕一二三四区| 丁香六月欧美| 在线观看一区二区三区| 婷婷丁香在线五月| 亚洲 国产 在线| av在线天堂中文字幕| 中文字幕最新亚洲高清| 久久国产精品影院| 国产精品爽爽va在线观看网站| 亚洲第一欧美日韩一区二区三区| 又紧又爽又黄一区二区| 99国产综合亚洲精品| 国产真实乱freesex| 色老头精品视频在线观看| 美女高潮喷水抽搐中文字幕| 国产成人欧美在线观看| 日韩欧美 国产精品| 日韩高清综合在线| 日本熟妇午夜| 午夜福利免费观看在线| 精品国产乱子伦一区二区三区| 亚洲电影在线观看av| 人成视频在线观看免费观看| 亚洲国产欧美网| 亚洲熟妇中文字幕五十中出| 99热这里只有精品一区 | 精品久久久久久久末码| 好看av亚洲va欧美ⅴa在| 亚洲男人天堂网一区| 99热这里只有精品一区 | 国产欧美日韩一区二区精品| 两性午夜刺激爽爽歪歪视频在线观看 | 精品国产美女av久久久久小说| 性欧美人与动物交配| 999精品在线视频| 又大又爽又粗| 亚洲一区中文字幕在线| 搡老妇女老女人老熟妇| 免费在线观看日本一区| 日本 av在线| 欧美人与性动交α欧美精品济南到| www日本在线高清视频| 国产精品精品国产色婷婷| 两个人看的免费小视频| 亚洲精品久久成人aⅴ小说| 欧美中文日本在线观看视频| 成人国产一区最新在线观看| 日本一区二区免费在线视频| 大型黄色视频在线免费观看| 黄色片一级片一级黄色片| 伊人久久大香线蕉亚洲五| 国内精品久久久久久久电影| 免费看a级黄色片| 性欧美人与动物交配| av国产免费在线观看| 人妻久久中文字幕网| 两个人免费观看高清视频| 国产片内射在线| 久久中文看片网| 高潮久久久久久久久久久不卡| 国产av不卡久久| 免费一级毛片在线播放高清视频| 九九热线精品视视频播放| 亚洲国产日韩欧美精品在线观看 | 亚洲欧美日韩高清在线视频| 国产一区二区在线av高清观看| 亚洲av片天天在线观看| 一个人免费在线观看的高清视频| 日日摸夜夜添夜夜添小说| 久久久国产精品麻豆| 韩国av一区二区三区四区| 欧美日韩亚洲综合一区二区三区_| 欧美日韩国产亚洲二区| 精品国产乱码久久久久久男人| 欧美日本视频| а√天堂www在线а√下载| 欧美日韩瑟瑟在线播放|