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

歡迎訪問 生活随笔!

生活随笔

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

linux

嵌入式Linux--U-Boot(四)MMC命令使用

發布時間:2024/1/8 linux 64 豆豆
生活随笔 收集整理的這篇文章主要介紹了 嵌入式Linux--U-Boot(四)MMC命令使用 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

目錄

  • 一、EMMC和SD卡操作命令
    • 1、mmc info命令
    • 2、mmc rescan命令
    • 3、mmc list命令
    • 4、mmc dev命令
    • 5、mmc part命令
    • 6、mmc read命令
    • 7、mmc write命令
      • EMMC更新
      • SD卡更新
    • 8、mmc erase命令

一、EMMC和SD卡操作命令

uboot 支持 EMMC 和 SD 卡,因此也要提供 EMMC 和 SD 卡的操作命令。一般認為 EMMC和 SD 卡是同一個東西,所以沒有特殊說明,本教程統一使用 MMC 來代指 EMMC 和 SD 卡。uboot 中常用于操作 MMC 設備的命令為“mmc”。

mmc 是一系列的命令,其后可以跟不同的參數,輸入“?mmc”即可查看 mmc 有關的命令,如下所示:

=> ? mmc mmc - MMC sub systemUsage: mmc info - display info of the current MMC device mmc read addr blk# cnt mmc write addr blk# cnt mmc erase blk# cnt mmc rescan mmc part - lists available partition on current mmc device mmc dev [dev] [part] - show or set current mmc device [partition] mmc list - lists available devices mmc hwpartition [args...] - does hardware partitioningarguments (sizes in 512-byte blocks):[user [enh start cnt] [wrrel {on|off}]] - sets user data area attributes[gp1|gp2|gp3|gp4 cnt [enh] [wrrel {on|off}]] - general purpose partition[check|set|complete] - mode, complete set partitioning completedWARNING: Partitioning is a write-once setting once it is set to complete.Power cycling is required to initialize partitions after set to complete. mmc bootbus dev boot_bus_width reset_boot_bus_width boot_mode- Set the BOOT_BUS_WIDTH field of the specified device mmc bootpart-resize <dev> <boot part size MB> <RPMB part size MB>- Change sizes of boot and RPMB partitions of specified device mmc partconf dev boot_ack boot_partition partition_access- Change the bits of the PARTITION_CONFIG field of the specified device mmc rst-function dev value- Change the RST_n_FUNCTION field of the specified deviceWARNING: This is a write-once field and 0 / 1 / 2 are the only valid values. mmc setdsr <value> - set DSR register value

從上面可以看出,mmc 后面跟不同的參數可以實現不同的功能。

命令描述
mmc info輸出 MMC 設備信息
mmc read讀取 MMC 中的數據。
mmc wirte向 MMC 設備寫入數據。
mmc rescan掃描 MMC 設備。
mmc part列出 MMC 設備的分區。
mmc dev切換 MMC 設備。
mmc list列出當前有效的所有 MMC 設備。
mmc hwpartition設置 MMC 設備的分區。
mmc bootbus……設置指定 MMC 設備的 BOOT_BUS_WIDTH 域的值。
mmc bootpart……設置指定 MMC 設備的 boot 和 RPMB 分區的大小。
mmc partconf……設置指定 MMC 設備的 PARTITION_CONFG 域的值。
mmc rst復位 MMC 設備
mmc setdsr設置 DSR 寄存器的值

1、mmc info命令

?mmc info 命令用于輸出當前選中的 mmc info 設備的信息,輸入命令“mmc info”即可,如:

=> mmc info Device: FSL_SDHC Manufacturer ID: 15 OEM: 100 Name: 8GTF4 Tran Speed: 52000000 Rd Block Len: 512 MMC version 4.0 High Capacity: Yes Capacity: 7.3 GiB Bus Width: 8-bit Erase Group Size: 512 KiB

?從上可以看出,當前選中的MMC設備是EMMC,版本為4.5,容量為3.7GB(EMMC為 4GB),速度為 52000000Hz=52MHz,8 位寬的總線。還有一個與 mmc info 命令相同功能的命令:mmcinfo,“mmc”和“info”之間沒有空格。

2、mmc rescan命令

?mmc rescan 命令用于掃描當前開發板上所有的 MMC 設備,包括 EMMC 和 SD 卡,輸入“mmc rescan”即可。

3、mmc list命令

?mmc list 命令用于來查看當前開發板一共有幾個 MMC 設備,輸入“mmc list”,結果如下:

=> mmc list FSL_SDHC: 0 FSL_SDHC: 1 (eMMC)

?可以看出當前開發板有兩個 MMC 設備:FSL_SDHC:0 和 FSL_SDHC:1 (eMMC),這是因為我現在用的是 EMMC 版本的核心板,加上 SD 卡一共有兩個 MMC 設備,FSL_SDHC:0 是 SD卡,FSL_SDHC:1(eMMC)是 EMMC。

?默認會將 EMMC 設置為當前 MMC 設備,這就是為什么輸入“mmc info”查詢到的是 EMMC 設備信息,而不是 SD 卡。

?要想查看 SD 卡信息,就要使用命令“mmc dev”來將 SD 卡設置為當前的 MMC 設備。

4、mmc dev命令

mmc dev 命令用于切換當前 MMC 設備,命令格式如下:

mmc dev [dev] [part]
  • [dev]用來設置要切換的 MMC 設備號
  • [part]是分區號。

如果不寫分區號的話默認為分區 0。使用如下命令切換到 SD 卡:

mmc dev 0 //切換到 SD 卡,0 為 SD 卡,1 為 eMMC
  • 0 :SD卡
  • 1:MMC設備

輸入命令“mmc info”即可查看 SD 卡的信息:

=> mmc dev 1 switch to partitions #0, OK mmc1(part 0) is current device => mmc info Device: FSL_SDHC Manufacturer ID: 15 OEM: 100 Name: 8GTF4 Tran Speed: 52000000 Rd Block Len: 512 MMC version 4.0 High Capacity: Yes Capacity: 7.3 GiB Bus Width: 8-bit Erase Group Size: 512 KiB

從上面可以看出當前 MMC設備為 4.0 版本的,容量為 7.3GiB(8GB 的 EMMC),8 位寬的總線。

5、mmc part命令

?有時候 SD 卡或者 EMMC 會有多個分區,可以使用命令“mmc part”來查看其分區,比如查看 EMMC 的分區情況,輸入如下命令:

mmc dev 1 //切換到 EMMC mmc part //查看 EMMC 分區 => mmc dev 1 switch to partitions #0, OK mmc1(part 0) is current device => mmc partPartition Map for MMC device 1 -- Partition Type: DOSPart Start Sector Num Sectors UUID Type1 20480 262144 3092ce11-01 0c2 282624 14987264 3092ce11-02 83

從上面可以看出,此時 EMMC 有兩個分區:

  • 扇區 20480 ~ 262144 為第一個分區
  • 扇區 282624~14987264 為第二個分區

?如果 EMMC 里面燒寫了 Linux 系統的話,EMMC 是有3 個分區的:

  • 第 0 個分區存放 uboot
  • 第 1 個分區存放 Linux 鏡像文件和設備樹
  • 第 2 個分區存放根文件系統

?但是在上面只有兩個分區,那是因為第 0 個分區沒有格式化,所以識別不出來,實際上第 0 個分區是存在的。一個新的 SD 卡默認只有一個分區,那就是分區 0,所以前面講解的 uboot 燒寫到 SD 卡,其實就是將 u-boot.bin 燒寫到了 SD 卡的分區 0 里面。后面學習 Linux 內核移植的時候再講解怎么在 SD 卡中創建并格式化第二個分區,并將 Linux 鏡像文件和設備樹文件存放到第二個分區中。

如果要將 EMMC 的分區 2 設置為當前 MMC 設置,可以使用如下命令:

mmc dev 1 2

如下:

=> mmc dev 1 2 switch to partitions #2, OK mmc1(part 2) is current device

6、mmc read命令

?mmc read 命令用于讀取 mmc 設備的數據,命令格式如下:

mmc read addr blk# cnt

?addr 是數據讀取到 DRAM 中的地址,blk 是要讀取的塊起始地址(十六進制),一個塊是 512字節,這里的塊和扇區是一個意思,在 MMC 設備中我們通常說扇區,cnt 是要讀取的塊數量(十六進制)。比如從 EMMC 的第 1536(0x600)個塊開始,讀取 16(0x10)個塊的數據到 DRAM 的0X80800000 地址處,命令如下:

mmc dev 1 0 //切換到 MMC 分區 0 mmc read 80800000 600 10 //讀取數據 => mmc dev 1 0 switch to partitions #0, OK mmc1(part 0) is current device => mmc read 80800000 600 10MMC read: dev # 1, block # 1536, count 16 ... 16 blocks read: OK

?這里我們還看不出來讀取是否正確,通過 md.b 命令查看 0x80800000 處的數據就行了,查看 16*512=8192(0x2000)個字節的數據,命令如下:

md.b 80800000 2000 => md.b 80800000 2000 80800000: aa 47 28 f9 62 61 75 64 72 61 74 65 3d 31 31 35 .G(.baudrate=115 80800010: 32 30 30 00 62 6f 61 72 64 5f 6e 61 6d 65 3d 45 200.board_name=E 80800020: 56 4b 00 62 6f 61 72 64 5f 72 65 76 3d 31 34 58 VK.board_rev=14X 80800030: 31 34 00 62 6f 6f 74 5f 66 64 74 3d 74 72 79 00 14.boot_fdt=try. 80800040: 62 6f 6f 74 63 6d 64 3d 66 61 74 6c 6f 61 64 20 bootcmd=fatload 80800050: 6d 6d 63 20 31 3a 31 20 38 30 38 30 30 30 30 30 mmc 1:1 80800000 80800060: 20 7a 49 6d 61 67 65 3b 20 66 61 74 6c 6f 61 64 zImage; fatload 80800070: 20 6d 6d 63 20 31 3a 31 20 38 33 30 30 30 30 30 mmc 1:1 8300000 80800080: 30 20 69 6d 78 36 75 6c 6c 2d 31 34 78 31 34 2d 0 imx6ull-14x14- 80800090: 65 6d 6d 63 2d 34 2e 33 2d 38 30 30 78 34 38 30 emmc-4.3-800x480 808000a0: 2d 63 2e 64 74 62 3b 20 62 6f 6f 74 7a 20 38 30 -c.dtb; bootz 80 808000b0: 38 30 30 30 30 30 20 2d 20 38 33 30 30 30 30 30 800000 - 8300000 808000c0: 30 00 62 6f 6f 74 63 6d 64 5f 6d 66 67 3d 72 75 0.bootcmd_mfg=ru 808000d0: 6e 20 6d 66 67 74 6f 6f 6c 5f 61 72 67 73 3b 62 n mfgtool_args;b 808000e0: 6f 6f 74 7a 20 24 7b 6c 6f 61 64 61 64 64 72 7d ootz ${loadaddr} 808000f0: 20 24 7b 69 6e 69 74 72 64 5f 61 64 64 72 7d 20 ${initrd_addr} 80800100: 24 7b 66 64 74 5f 61 64 64 72 7d 3b 00 62 6f 6f ${fdt_addr};.boo 80800110: 74 64 65 6c 61 79 3d 34 00 62 6f 6f 74 73 63 72 tdelay=4.bootscr 80800120: 69 70 74 3d 65 63 68 6f 20 52 75 6e 6e 69 6e 67 ipt=echo Running 80800130: 20 62 6f 6f 74 73 63 72 69 70 74 20 66 72 6f 6d bootscript from 80800140: 20 6d 6d 63 20 2e 2e 2e 3b 20 73 6f 75 72 63 65 mmc ...; source 80800150: 00 63 6f 6e 73 6f 6c 65 3d 74 74 79 6d 78 63 30 .console=ttymxc0 80800160: 00 65 74 68 61 63 74 3d 46 45 43 31 00 65 74 68 .ethact=FEC1.eth 80800170: 61 64 64 72 3d 64 65 3a 62 34 3a 37 63 3a 64 65 addr=de:b4:7c:de 80800180: 3a 64 63 3a 30 37 00 65 74 68 70 72 69 6d 65 3d :dc:07.ethprime= 80800190: 46 45 43 00 66 64 74 5f 61 64 64 72 3d 30 78 38 FEC.fdt_addr=0x8 808001a0: 33 30 30 30 30 30 30 00 66 64 74 5f 66 69 6c 65 3000000.fdt_file 808001b0: 3d 69 6d 78 36 75 6c 6c 2d 31 34 78 31 34 2d 65 =imx6ull-14x14-e 808001c0: 6d 6d 63 2d 34 2e 33 2d 38 30 30 78 34 38 30 2d mmc-4.3-800x480- 808001d0: 63 2e 64 74 62 00 66 64 74 5f 68 69 67 68 3d 30 c.dtb.fdt_high=0 808001e0: 78 66 66 66 66 66 66 66 66 00 66 69 6e 64 66 64 xffffffff.findfd 808001f0: 74 3d 69 66 20 74 65 73 74 20 24 66 64 74 5f 66 t=if test $fdt_f 80800200: 69 6c 65 20 3d 20 75 6e 64 65 66 69 6e 65 64 3b ile = undefined; 80800210: 20 74 68 65 6e 20 69 66 20 74 65 73 74 20 24 62 then if test $b 80800220: 6f 61 72 64 5f 6e 61 6d 65 20 3d 20 45 56 4b 20 oard_name = EVK 80800230: 26 26 20 74 65 73 74 20 24 62 6f 61 72 64 5f 72 && test $board_r 80800240: 65 76 20 3d 20 39 58 39 3b 20 74 68 65 6e 20 73 ev = 9X9; then s 80800250: 65 74 65 6e 76 20 66 64 74 5f 66 69 6c 65 20 69 etenv fdt_file i 80800260: 6d 78 36 75 6c 6c 2d 39 78 39 2d 65 76 6b 2e 64 mx6ull-9x9-evk.d 80800270: 74 62 3b 20 66 69 3b 20 69 66 20 74 65 73 74 20 tb; fi; if test 80800280: 24 62 6f 61 72 64 5f 6e 61 6d 65 20 3d 20 45 56 $board_name = EV 80800290: 4b 20 26 26 20 74 65 73 74 20 24 62 6f 61 72 64 K && test $board 808002a0: 5f 72 65 76 20 3d 20 31 34 58 31 34 3b 20 74 68 _rev = 14X14; th 808002b0: 65 6e 20 73 65 74 65 6e 76 20 66 64 74 5f 66 69 en setenv fdt_fi 808002c0: 6c 65 20 69 6d 78 36 75 6c 6c 2d 31 34 78 31 34 le imx6ull-14x14 808002d0: 2d 65 76 6b 2e 64 74 62 3b 20 66 69 3b 20 69 66 -evk.dtb; fi; if 808002e0: 20 74 65 73 74 20 24 66 64 74 5f 66 69 6c 65 20 test $fdt_file 808002f0: 3d 20 75 6e 64 65 66 69 6e 65 64 3b 20 74 68 65 = undefined; the 80800300: 6e 20 65 63 68 6f 20 57 41 52 4e 49 4e 47 3a 20 n echo WARNING: 80800310: 43 6f 75 6c 64 20 6e 6f 74 20 64 65 74 65 72 6d Could not determ 80800320: 69 6e 65 20 64 74 62 20 74 6f 20 75 73 65 3b 20 ine dtb to use; 80800330: 66 69 3b 20 66 69 3b 00 67 61 74 65 77 61 79 69 fi; fi;.gatewayi 80800340: 70 3d 31 39 32 2e 31 36 38 2e 30 2e 31 00 69 6d p=192.168.0.1.im 80800350: 61 67 65 3d 7a 49 6d 61 67 65 00 69 6e 69 74 72 age=zImage.initr 80800360: 64 5f 61 64 64 72 3d 30 78 38 33 38 30 30 30 30 d_addr=0x8380000 80800370: 30 00 69 6e 69 74 72 64 5f 68 69 67 68 3d 30 78 0.initrd_high=0x 80800380: 66 66 66 66 66 66 66 66 00 69 70 5f 64 79 6e 3d ffffffff.ip_dyn= 80800390: 79 65 73 00 69 70 61 64 64 72 3d 31 39 32 2e 31 yes.ipaddr=192.1 808003a0: 36 38 2e 30 2e 31 32 31 00 6c 6f 61 64 61 64 64 68.0.121.loadadd 808003b0: 72 3d 30 78 38 30 38 30 30 30 30 30 00 6c 6f 61 r=0x80800000.loa 808003c0: 64 62 6f 6f 74 73 63 72 69 70 74 3d 66 61 74 6c dbootscript=fatl 808003d0: 6f 61 64 20 6d 6d 63 20 24 7b 6d 6d 63 64 65 76 oad mmc ${mmcdev 808003e0: 7d 3a 24 7b 6d 6d 63 70 61 72 74 7d 20 24 7b 6c }:${mmcpart} ${l 808003f0: 6f 61 64 61 64 64 72 7d 20 24 7b 73 63 72 69 70 oadaddr} ${scrip 80800400: 74 7d 3b 00 6c 6f 61 64 66 64 74 3d 66 61 74 6c t};.loadfdt=fatl 80800410: 6f 61 64 20 6d 6d 63 20 24 7b 6d 6d 63 64 65 76 oad mmc ${mmcdev 80800420: 7d 3a 24 7b 6d 6d 63 70 61 72 74 7d 20 24 7b 66 }:${mmcpart} ${f 80800430: 64 74 5f 61 64 64 72 7d 20 24 7b 66 64 74 5f 66 dt_addr} ${fdt_f 80800440: 69 6c 65 7d 00 6c 6f 61 64 69 6d 61 67 65 3d 66 ile}.loadimage=f 80800450: 61 74 6c 6f 61 64 20 6d 6d 63 20 24 7b 6d 6d 63 atload mmc ${mmc 80800460: 64 65 76 7d 3a 24 7b 6d 6d 63 70 61 72 74 7d 20 dev}:${mmcpart} 80800470: 24 7b 6c 6f 61 64 61 64 64 72 7d 20 24 7b 69 6d ${loadaddr} ${im 80800480: 61 67 65 7d 00 6c 6f 67 6f 5f 66 69 6c 65 3d 61 age}.logo_file=a 80800490: 6c 69 65 6e 74 65 6b 2e 62 6d 70 00 6d 66 67 74 lientek.bmp.mfgt 808004a0: 6f 6f 6c 5f 61 72 67 73 3d 73 65 74 65 6e 76 20 ool_args=setenv 808004b0: 62 6f 6f 74 61 72 67 73 20 63 6f 6e 73 6f 6c 65 bootargs console 808004c0: 3d 24 7b 63 6f 6e 73 6f 6c 65 7d 2c 24 7b 62 61 =${console},${ba 808004d0: 75 64 72 61 74 65 7d 20 72 64 69 6e 69 74 3d 2f udrate} rdinit=/ 808004e0: 6c 69 6e 75 78 72 63 20 67 5f 6d 61 73 73 5f 73 linuxrc g_mass_s 808004f0: 74 6f 72 61 67 65 2e 73 74 61 6c 6c 3d 30 20 67 torage.stall=0 g 80800500: 5f 6d 61 73 73 5f 73 74 6f 72 61 67 65 2e 72 65 _mass_storage.re 80800510: 6d 6f 76 61 62 6c 65 3d 31 20 67 5f 6d 61 73 73 movable=1 g_mass 80800520: 5f 73 74 6f 72 61 67 65 2e 66 69 6c 65 3d 2f 66 _storage.file=/f 80800530: 61 74 20 67 5f 6d 61 73 73 5f 73 74 6f 72 61 67 at g_mass_storag 80800540: 65 2e 72 6f 3d 31 20 67 5f 6d 61 73 73 5f 73 74 e.ro=1 g_mass_st 80800550: 6f 72 61 67 65 2e 69 64 56 65 6e 64 6f 72 3d 30 orage.idVendor=0 80800560: 78 30 36 36 46 20 67 5f 6d 61 73 73 5f 73 74 6f x066F g_mass_sto 80800570: 72 61 67 65 2e 69 64 50 72 6f 64 75 63 74 3d 30 rage.idProduct=0 80800580: 78 33 37 46 46 20 67 5f 6d 61 73 73 5f 73 74 6f x37FF g_mass_sto 80800590: 72 61 67 65 2e 69 53 65 72 69 61 6c 4e 75 6d 62 rage.iSerialNumb 808005a0: 65 72 3d 22 22 20 63 6c 6b 5f 69 67 6e 6f 72 65 er="" clk_ignore 808005b0: 5f 75 6e 75 73 65 64 20 00 6d 6d 63 61 72 67 73 _unused .mmcargs 808005c0: 3d 73 65 74 65 6e 76 20 62 6f 6f 74 61 72 67 73 =setenv bootargs 808005d0: 20 63 6f 6e 73 6f 6c 65 3d 24 7b 63 6f 6e 73 6f console=${conso 808005e0: 6c 65 7d 2c 24 7b 62 61 75 64 72 61 74 65 7d 20 le},${baudrate} 808005f0: 72 6f 6f 74 3d 24 7b 6d 6d 63 72 6f 6f 74 7d 00 root=${mmcroot}. 80800600: 6d 6d 63 61 75 74 6f 64 65 74 65 63 74 3d 79 65 mmcautodetect=ye 80800610: 73 00 6d 6d 63 62 6f 6f 74 3d 65 63 68 6f 20 42 s.mmcboot=echo B 80800620: 6f 6f 74 69 6e 67 20 66 72 6f 6d 20 6d 6d 63 20 ooting from mmc 80800630: 2e 2e 2e 3b 20 72 75 6e 20 6d 6d 63 61 72 67 73 ...; run mmcargs 80800640: 3b 20 69 66 20 74 65 73 74 20 24 7b 62 6f 6f 74 ; if test ${boot 80800650: 5f 66 64 74 7d 20 3d 20 79 65 73 20 7c 7c 20 74 _fdt} = yes || t 80800660: 65 73 74 20 24 7b 62 6f 6f 74 5f 66 64 74 7d 20 est ${boot_fdt} 80800670: 3d 20 74 72 79 3b 20 74 68 65 6e 20 69 66 20 72 = try; then if r 80800680: 75 6e 20 6c 6f 61 64 66 64 74 3b 20 74 68 65 6e un loadfdt; then 80800690: 20 62 6f 6f 74 7a 20 24 7b 6c 6f 61 64 61 64 64 bootz ${loadadd 808006a0: 72 7d 20 2d 20 24 7b 66 64 74 5f 61 64 64 72 7d r} - ${fdt_addr} 808006b0: 3b 20 65 6c 73 65 20 69 66 20 74 65 73 74 20 24 ; else if test $ 808006c0: 7b 62 6f 6f 74 5f 66 64 74 7d 20 3d 20 74 72 79 {boot_fdt} = try 808006d0: 3b 20 74 68 65 6e 20 62 6f 6f 74 7a 3b 20 65 6c ; then bootz; el 808006e0: 73 65 20 65 63 68 6f 20 57 41 52 4e 3a 20 43 61 se echo WARN: Ca 808006f0: 6e 6e 6f 74 20 6c 6f 61 64 20 74 68 65 20 44 54 nnot load the DT 80800700: 3b 20 66 69 3b 20 66 69 3b 20 65 6c 73 65 20 62 ; fi; fi; else b 80800710: 6f 6f 74 7a 3b 20 66 69 3b 00 6d 6d 63 64 65 76 ootz; fi;.mmcdev 80800720: 3d 31 00 6d 6d 63 70 61 72 74 3d 31 00 6d 6d 63 =1.mmcpart=1.mmc 80800730: 72 6f 6f 74 3d 2f 64 65 76 2f 6d 6d 63 62 6c 6b root=/dev/mmcblk 80800740: 31 70 32 20 72 6f 6f 74 77 61 69 74 20 72 77 00 1p2 rootwait rw. 80800750: 6e 65 74 61 72 67 73 3d 73 65 74 65 6e 76 20 62 netargs=setenv b 80800760: 6f 6f 74 61 72 67 73 20 63 6f 6e 73 6f 6c 65 3d ootargs console= 80800770: 24 7b 63 6f 6e 73 6f 6c 65 7d 2c 24 7b 62 61 75 ${console},${bau 80800780: 64 72 61 74 65 7d 20 72 6f 6f 74 3d 2f 64 65 76 drate} root=/dev 80800790: 2f 6e 66 73 20 69 70 3d 64 68 63 70 20 6e 66 73 /nfs ip=dhcp nfs 808007a0: 72 6f 6f 74 3d 24 7b 73 65 72 76 65 72 69 70 7d root=${serverip} 808007b0: 3a 24 7b 6e 66 73 72 6f 6f 74 7d 2c 76 33 2c 74 :${nfsroot},v3,t 808007c0: 63 70 00 6e 65 74 62 6f 6f 74 3d 65 63 68 6f 20 cp.netboot=echo 808007d0: 42 6f 6f 74 69 6e 67 20 66 72 6f 6d 20 6e 65 74 Booting from net 808007e0: 20 2e 2e 2e 3b 20 72 75 6e 20 6e 65 74 61 72 67 ...; run netarg 808007f0: 73 3b 20 69 66 20 74 65 73 74 20 24 7b 69 70 5f s; if test ${ip_ 80800800: 64 79 6e 7d 20 3d 20 79 65 73 3b 20 74 68 65 6e dyn} = yes; then 80800810: 20 73 65 74 65 6e 76 20 67 65 74 5f 63 6d 64 20 setenv get_cmd 80800820: 64 68 63 70 3b 20 65 6c 73 65 20 73 65 74 65 6e dhcp; else seten 80800830: 76 20 67 65 74 5f 63 6d 64 20 74 66 74 70 3b 20 v get_cmd tftp; 80800840: 66 69 3b 20 24 7b 67 65 74 5f 63 6d 64 7d 20 24 fi; ${get_cmd} $ 80800850: 7b 69 6d 61 67 65 7d 3b 20 69 66 20 74 65 73 74 {image}; if test 80800860: 20 24 7b 62 6f 6f 74 5f 66 64 74 7d 20 3d 20 79 ${boot_fdt} = y 80800870: 65 73 20 7c 7c 20 74 65 73 74 20 24 7b 62 6f 6f es || test ${boo 80800880: 74 5f 66 64 74 7d 20 3d 20 74 72 79 3b 20 74 68 t_fdt} = try; th 80800890: 65 6e 20 69 66 20 24 7b 67 65 74 5f 63 6d 64 7d en if ${get_cmd} 808008a0: 20 24 7b 66 64 74 5f 61 64 64 72 7d 20 24 7b 66 ${fdt_addr} ${f 808008b0: 64 74 5f 66 69 6c 65 7d 3b 20 74 68 65 6e 20 62 dt_file}; then b 808008c0: 6f 6f 74 7a 20 24 7b 6c 6f 61 64 61 64 64 72 7d ootz ${loadaddr} 808008d0: 20 2d 20 24 7b 66 64 74 5f 61 64 64 72 7d 3b 20 - ${fdt_addr}; 808008e0: 65 6c 73 65 20 69 66 20 74 65 73 74 20 24 7b 62 else if test ${b 808008f0: 6f 6f 74 5f 66 64 74 7d 20 3d 20 74 72 79 3b 20 oot_fdt} = try; 80800900: 74 68 65 6e 20 62 6f 6f 74 7a 3b 20 65 6c 73 65 then bootz; else 80800910: 20 65 63 68 6f 20 57 41 52 4e 3a 20 43 61 6e 6e echo WARN: Cann 80800920: 6f 74 20 6c 6f 61 64 20 74 68 65 20 44 54 3b 20 ot load the DT; 80800930: 66 69 3b 20 66 69 3b 20 65 6c 73 65 20 62 6f 6f fi; fi; else boo 80800940: 74 7a 3b 20 66 69 3b 00 6e 65 74 6d 61 73 6b 3d tz; fi;.netmask= 80800950: 32 35 35 2e 32 35 35 2e 32 35 35 2e 30 00 70 61 255.255.255.0.pa 80800960: 6e 65 6c 3d 41 54 4b 2d 4c 43 44 2d 34 2e 33 2d nel=ATK-LCD-4.3- 80800970: 38 30 30 78 34 38 30 00 73 63 72 69 70 74 3d 62 800x480.script=b 80800980: 6f 6f 74 2e 73 63 72 00 73 65 72 76 65 72 69 70 oot.scr.serverip 80800990: 3d 31 39 32 2e 31 36 38 2e 30 2e 31 32 30 00 73 =192.168.0.120.s 808009a0: 70 6c 61 73 68 69 6d 61 67 65 3d 30 78 38 38 30 plashimage=0x880 808009b0: 30 30 30 30 30 00 73 70 6c 61 73 68 70 6f 73 3d 00000.splashpos= 808009c0: 6d 2c 6d 00 00 00 00 00 00 00 00 00 00 00 00 00 m,m............. 808009d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................

從上面可以看到“D$…baudrate=115200.board_name=EVK.board_rev=14X14.”等字樣,這個就是 uboot 中的環境變量。EMMC 核心板 uboot 環境變量的存儲起始地址就是1536*512=786432。

7、mmc write命令

?要將數據寫到 MMC 設備里面,可以使用命令“mmc write”,格式如下:

mmc write addr blk# cnt
  • addr 是要寫入 MMC 中的數據在 DRAM 中的起始地址
  • blk 是要寫入 MMC 的塊起始地址(十六進制)
  • cnt 是要寫入的塊大小,一個塊為 512 字節

?我們可以使用命令“mmc write”來升級 uboot,也就是在 uboot 中更新 uboot。這里要用到 nfs 或者 tftp 命令,通過 nfs 或者 tftp 命令將新的 u-boot.bin 下載到開發板的 DRAM 中,然后再使用命令“mmc write”將其寫入到 MMC設備中。

?我們就來更新一下 SD 中的 uboot,先查看一下 SD 卡中的 uboot 版本號,注意編譯時間,輸入命令:

mmc dev 0 //切換到 SD 卡 version //查看版本號 => mmc dev 1 switch to partitions #0, OK mmc1(part 0) is current device => versionU-Boot 2016.03 (Dec 12 2020 - 13:19:46 +0800) arm-linux-gnueabihf-gcc (Linaro GCC 4.9-2017.01) 4.9.4 GNU ld (Linaro_Binutils-2017.01) 2.24.0.20141017 Linaro 2014_11-3-git

可以看出當前EMMC中的uboot是(Dec 12 2020 - 13:19:46 +0800)編譯的。使用 tftp 命令將一個新編譯的u-boot.imx通過tft方式下載到 0x80800000 地址處,如下:

=> tftp 80800000 u-boot.imx FEC1 Waiting for PHY auto negotiation to complete.... done Using FEC1 device TFTP from server 192.168.0.120; our IP address is 192.168.0.121 Filename 'u-boot.imx'. Load address: 0x80800000 Loading: ###########################36.1 KiB/s done Bytes transferred = 384000 (5dc00 hex)

u-boot.imx 大小為 384000 字節,384000/512=750,所以我們要向 EMMC 中寫入750 個塊,如果有小數的話就要加 1 個塊。使用命令“mmc write”從 EMMC分區 0 第 2 個塊(扇區)開始燒寫,一共燒寫 750(0x2EE)個塊,命令如下:

mmc dev 1 0 //切換到 EMMC 分區 0 tftp 80800000 u-boot.imx //下載 u-boot.imx 到 DRAM mmc write 80800000 2 2EE //燒寫 u-boot.imx 到 EMMC 中 mmc partconf 1 1 0 0 //分區配置,EMMC 需要這一步! => mmc dev 1 0 switch to partitions #0, OK mmc1(part 0) is current device => tft 80800000 u-boot.imx FEC1 Waiting for PHY auto negotiation to complete.... done Using FEC1 device TFTP from server 192.168.0.120; our IP address is 192.168.0.121 Filename 'u-boot.imx'. Load address: 0x80800000 Loading: ###########################36.1 KiB/s done Bytes transferred = 384000 (5dc00 hex) => mmc write 80800000 2 2EEMMC write: dev # 1, block # 2, count 750 ... 750 blocks written: OK => mmc partconf 1 1 0 0

燒寫成功,重啟開發板,重啟以后再輸入version來查看版本號,結果如下:

=> versionU-Boot 2016.03 (Dec 12 2020 - 20:40:10 +0800) arm-linux-gnueabihf-gcc (Linaro GCC 4.9-2017.01) 4.9.4 GNU ld (Linaro_Binutils-2017.01) 2.24.0.20141017 Linaro 2014_11-3-git

可以看出當前EMMC中的uboot是(Dec 12 2020 - 20:40:10 +0800)編譯的,說明Uboot更新成功。

EMMC更新

mmc dev 1 0 //切換到 EMMC 分區 0 tftp 80800000 u-boot.imx //下載 u-boot.imx 到 DRAM mmc write 80800000 2 2EE //燒寫 u-boot.imx 到 EMMC 中 mmc partconf 1 1 0 0 //分區配置,EMMC 需要這一步!

SD卡更新

mmc dev 0 0 //切換到 SD卡 分區 0 tftp 80800000 u-boot.imx //下載 u-boot.imx 到 DRAM mmc write 80800000 2 2EE //燒寫 u-boot.imx 到 SD卡 中

8、mmc erase命令

如果要擦除 MMC 設備的指定塊就是用命令“mmc erase”,命令格式如下:

mmc erase blk# cnt
  • blk 為要擦除的起始塊
  • cnt 是要擦除的數量

?沒事不要用 mmc erase 來擦除 MMC 設備!!!
?關于 MMC 設備相關的命令就講解到這里。

總結

以上是生活随笔為你收集整理的嵌入式Linux--U-Boot(四)MMC命令使用的全部內容,希望文章能夠幫你解決所遇到的問題。

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

国产精品初高中精品久久 | 国产夫妻av在线 | 最近日韩中文字幕中文 | 久久人人插 | 国产免费影院 | 国产裸体无遮挡 | 国产999精品久久久 免费a网站 | 亚洲精品国久久99热 | 丁香花中文在线免费观看 | 亚洲精品av中文字幕在线在线 | 日本久久综合视频 | 国产人在线成免费视频 | 国产精品久久一区二区三区, | 中文字幕在线观看2018 | 91成人欧美 | 国产精品99蜜臀久久不卡二区 | 久亚洲| 日韩久久久久久久久久久久 | 国产一级二级视频 | 亚洲伦理一区二区 | 综合五月婷婷 | 亚洲成色777777在线观看影院 | 国产剧情一区二区在线观看 | 国产精品久久久久久久久久免费看 | 免费精品视频在线 | 久久伊99综合婷婷久久伊 | 一区二区三区在线免费观看视频 | 日韩成人免费在线 | 国内精品久久久久影院优 | 久一网站| 国产首页 | 国产精品日韩欧美一区二区 | 日韩中文字幕在线看 | 亚洲精品自拍视频在线观看 | 精品久久久久久久久久久院品网 | 国产永久网站 | 欧美国产精品久久久久久免费 | 亚洲综合小说电影qvod | 91xav| av日韩国产 | 国产精品中文字幕在线 | 狠狠地操 | 国产一级a毛片视频爆浆 | 天天操狠狠操 | 99在线国产 | 欧美性另类| a特级毛片| 国产一区免费 | 欧美日韩在线观看一区 | 91亚洲精品在线 | 免费在线观看国产黄 | 日韩免费网站 | 91视频免费播放 | 美女网站视频免费都是黄 | 日韩成人高清在线 | 日韩在线观看电影 | 久草在线中文888 | 中文字幕在线观看视频一区 | 婷婷亚洲五月色综合 | 久久久久久久久久久久久国产精品 | 91精品国产综合久久久久久久 | 狠狠的操狠狠的干 | 9i看片成人免费看片 | 国产日韩在线播放 | 日韩色综合网 | 在线激情网| 日本特黄特色aaa大片免费 | 国产精品第二页 | 亚洲精品乱码久久久久 | 免费av看片 | 久久香蕉国产精品麻豆粉嫩av | 精品美女久久久久久免费 | www91在线| 亚洲成a人片在线观看网站口工 | 中文在线a天堂 | 免费三及片 | 欧美日韩网站 | 成人丁香花 | 麻豆果冻剧传媒在线播放 | 在线观看成年人 | 免费av在线 | 久久久久久久久久影院 | 一级精品视频在线观看宜春院 | 色婷婷骚婷婷 | 网站在线观看日韩 | 色妞色视频一区二区三区四区 | 免费观看性生交 | 久久视频免费观看 | 欧美在线观看小视频 | 超碰在线亚洲 | 天天操夜夜叫 | 日韩欧美一区二区三区在线观看 | 亚洲精品ww| 色片网站在线观看 | 久久久久国产精品一区二区 | 日韩亚洲在线 | 九九视频在线播放 | 国产中文自拍 | 亚洲成年人在线播放 | 蜜桃av久久久亚洲精品 | 91中文字幕一区 | 国产中文字幕视频 | av大全在线观看 | 午夜久久久久久久久久影院 | 麻豆国产精品一区二区三区 | 中文字幕日韩av | 探花视频网站 | 天天射天天操天天 | 免费看久久久 | 91免费黄视频 | 久久少妇 | av免费观看网站 | 亚洲国产无 | 中文av网站 | 免费看黄色大全 | 亚洲天堂视频在线 | 日韩午夜高清 | 激情欧美一区二区三区免费看 | 国产精品 中文字幕 亚洲 欧美 | 国产日本亚洲 | 三级黄色免费片 | avsex| 深爱综合网 | 天天操人人干 | 日韩av在线资源 | 国产色视频123区 | 亚洲激精日韩激精欧美精品 | 五月开心六月伊人色婷婷 | 天堂资源在线观看视频 | 国产一线二线三线性视频 | 99热在| 精品一区电影 | 国产成人精品亚洲精品 | 免费高清看电视网站 | 婷婷视频在线播放 | 欧美亚洲精品在线观看 | 国产美女黄网站免费 | 久久久九九 | 激情文学丁香 | 在线观看视频一区二区 | 久久成人国产 | 欧美成年人在线观看 | 五月婷婷婷婷婷 | 久久国产精品第一页 | 丁香六月婷婷开心婷婷网 | 国产精品自产拍在线观看 | 美女网站在线看 | 九九久久电影 | 久久任你操 | 久久久久久久久久国产精品 | 91在线入口| 丝袜+亚洲+另类+欧美+变态 | 欧美日韩一区二区视频在线观看 | 亚洲精品在线视频 | 日韩在线网 | 久久99操 | av在线免费在线观看 | 日韩电影中文字幕在线观看 | 99精品免费久久久久久久久日本 | www色网站| 欧美小视频在线观看 | 日韩精品视频在线免费观看 | 国产欧美日韩视频 | 91在线视频在线观看 | 亚洲视频久久 | 久久爱资源网 | 亚洲一区美女视频在线观看免费 | 久久久久久久99精品免费观看 | 五月天电影免费在线观看一区 | 中文字幕av专区 | 二区三区在线视频 | 黄色免费观看视频 | 亚洲在线网址 | 成人91av| 97爱爱爱| 1000部国产精品成人观看 | 日韩av中文在线观看 | 中文在线中文资源 | 亚洲国产免费看 | 激情欧美国产 | 欧美性色黄大片在线观看 | 九九精品视频在线看 | 97超级碰碰碰视频在线观看 | 亚洲激情视频 | 国内精品视频一区二区三区八戒 | 欧美日韩国产一区二区三区 | 日本黄色免费在线 | 亚洲国产婷婷 | 免费黄色一区 | 女人久久久久 | 97国产电影| 国产探花视频在线播放 | 欧美一级大片在线观看 | 国产精品男女啪啪 | 成人一区电影 | 狠狠色丁香婷婷综合久小说久 | 欧美日高清视频 | 66av99精品福利视频在线 | 天天操天天干天天操天天干 | 国产精品12 | 91麻豆精品国产91久久久久久 | 国产精品无 | 免费看黄色小说的网站 | 日本夜夜草视频网站 | 久久久久成人精品免费播放动漫 | 国产成人综合在线观看 | 中文字幕一区二区在线播放 | 99国产成+人+综合+亚洲 欧美 | 国产精品中文在线 | 国产精品一区二区三区视频免费 | 国产精品视频在线观看 | 免费在线国产黄色 | 日韩午夜在线观看 | 国产精品久久久久久久久久久杏吧 | 免费在线观看av网址 | a色视频| 日韩久久精品 | 免费男女羞羞的视频网站中文字幕 | 四虎影视4hu4虎成人 | а天堂中文最新一区二区三区 | 中文视频一区二区 | 久久免费毛片视频 | 99综合电影在线视频 | 精品爱爱 | 亚洲午夜久久久久久久久电影网 | 99在线视频精品 | 日韩成人黄色 | 91大神精品视频在线观看 | 久久久久免费电影 | 精品在线视频一区 | 日韩免费网址 | 日韩欧三级| 天天操天天舔天天干 | 亚洲黄色区 | 国产韩国日本高清视频 | 国产精品麻豆果冻传媒在线播放 | 欧美久草视频 | 91热这里只有精品 | 欧美一区二区免费在线观看 | 久在线观看视频 | 在线视频日韩一区 | 91一区二区在线 | 黄色网址在线播放 | 免费看黄电影 | 九九热只有精品 | 一本大道久久精品懂色aⅴ 五月婷社区 | 国产黄色免费在线观看 | 99视频精品全国免费 | 日本久久91 | 大荫蒂欧美视频另类xxxx | 五月激情天 | 成人久久久久久久久久 | 国产成人精品电影久久久 | 久久1区| 亚洲免费在线看 | 国产在线观看免费 | 婷婷午夜 | 久久久网页 | 中文字幕在线不卡国产视频 | 激情动态| 99自拍视频在线观看 | 在线视频 国产 日韩 | 日韩精品视频第一页 | 日本丶国产丶欧美色综合 | 欧美俄罗斯性视频 | 男女免费视频观看 | 91精品视频导航 | 久久精品视频在线播放 | 99精品国产视频 | 国产免费观看高清完整版 | 久久久影院一区二区三区 | 在线亚洲高清视频 | 日本激情中文字幕 | 天天综合网在线观看 | 国产精品成久久久久 | 午夜婷婷在线播放 | 日韩视频在线观看免费 | 正在播放国产一区二区 | 一区二区视 | 欧美日韩精品在线一区二区 | 免费在线91 | 成人日批视频 | 伊甸园永久入口www 99热 精品在线 | 国产精品久久久网站 | 黄污视频网站大全 | 六月天综合网 | 国产亚洲综合在线 | 四虎精品成人免费网站 | 综合久久网站 | 午夜久草| 精选久久| 在线中文字母电影观看 | 亚洲在线精品视频 | 在线观看成人av | 24小时日本在线www免费的 | 狠狠躁日日躁狂躁夜夜躁 | av在线永久免费观看 | 中文字幕第一页在线vr | 深爱激情站 | 亚洲日本欧美在线 | 国产精品视频大全 | 久久精品看 | 精品久久久久久亚洲综合网 | 在线亚洲欧美视频 | 欧美精品久久久久久久免费 | 国产免费人成xvideos视频 | 久久观看 | av电影免费在线 | 婷婷狠狠操 | 国产午夜三级 | 国产原厂视频在线观看 | 国产免费又粗又猛又爽 | 中文字幕av免费观看 | 欧美精品免费在线 | 懂色av懂色av粉嫩av分享吧 | 国产乱对白刺激视频在线观看女王 | av中文在线观看 | 国产在线999 | 亚洲www天堂com | 国产精品第二十页 | 98涩涩国产露脸精品国产网 | 亚州欧美视频 | 热久久99这里有精品 | 97色在线视频 | 特黄特色特刺激视频免费播放 | 免费看麻豆 | 日韩高清三区 | 亚洲精品视频免费在线 | 色欧美88888久久久久久影院 | 在线观看视频福利 | 欧美在线观看小视频 | 免费色av | 亚洲少妇自拍 | 黄色网在线播放 | 精品亚洲免费 | 97精品国产97久久久久久久久久久久 | 草久视频在线 | 99爱在线观看 | 91高清免费 | 国产剧情在线一区 | 日韩视频免费观看高清 | 精品国产资源 | 美女国产免费 | 久久丁香 | 人人插人人 | 福利网址在线观看 | 一区二区三区在线观看免费视频 | 国产网红在线观看 | 91九色九色| 久久试看 | 麻花豆传媒一二三产区 | 久久婷婷激情 | 中文字幕在线观看完整版 | 国产精品原创av片国产免费 | 久久综合亚洲鲁鲁五月久久 | 日本xxxx裸体xxxx17 | 一级黄色片在线播放 | 992tv在线 | 亚洲五月花 | 国产高清av免费在线观看 | 成人黄色电影在线播放 | 综合激情av| 欧美综合色在线图区 | 人人干干人人 | 99久久久国产免费 | 色姑娘综合天天 | 九色一区二区 | 午夜视频不卡 | 亚洲精品国产精品乱码不99热 | 日韩免费高清 | 日本在线观看中文字幕无线观看 | 欧美午夜性生活 | 五月导航 | 日韩在线色 | 国产欧美精品一区二区三区四区 | 日本午夜在线观看 | 97国产电影 | 日韩三级视频在线观看 | 精品在线视频一区二区三区 | 国产黄色免费 | 天天色天天草天天射 | 五月亚洲婷婷 | 国产高清在线不卡 | 天天做天天干 | 国产91aaa| 成人动漫视频在线 | 色欧美88888久久久久久影院 | 国产一级a毛片视频爆浆 | 粉嫩av一区二区三区四区在线观看 | 午夜久久久精品 | 国产高清久久 | 日韩免费视频 | 亚洲精品网站在线 | 91麻豆免费看 | 久久夜av | 天堂av在线中文在线 | 在线观看日本高清mv视频 | 欧美性高跟鞋xxxxhd | 国产在线观看你懂得 | 91xav | 国产日韩精品久久 | 亚洲第一av在线 | www.色com| 97精品在线观看 | 国产一区二区手机在线观看 | 国产免码va在线观看免费 | 久久久久欧美精品999 | 欧美日韩中文字幕综合视频 | 一区二区三区在线看 | 欧美日韩精品在线免费观看 | 免费一级片在线观看 | 欧美少妇xxx| 久久久免费视频播放 | 欧美成人日韩 | 在线观看av大片 | 国产剧情一区在线 | 丁香在线观看完整电影视频 | 亚州精品一二三区 | 人人干人人草 | 999成人免费视频 | 欧美精品久久久久久久久久丰满 | 国产色a在线观看 | 在线视频麻豆 | 福利视频网址 | 欧美在线视频一区二区三区 | 九九九在线 | 天天综合操 | 91福利试看| 在线观看完整版免费 | 日日草天天草 | 日韩欧美视频一区二区三区 | 亚洲国产精品免费 | 亚洲一区二区麻豆 | 伊人黄色网 | 亚洲国产欧洲综合997久久, | zzijzzij亚洲成熟少妇 | 手机在线日韩视频 | 日日摸日日添夜夜爽97 | 91丨九色丨国产在线 | 天天操天天干天天摸 | 成人免费 在线播放 | 91精品少妇偷拍99 | 日韩在线视 | 欧美精品一区二区三区一线天视频 | 午夜精品久久一牛影视 | 日本中文字幕在线视频 | 五月婷婷一区二区三区 | 中文av不卡| 最近日韩免费视频 | 在线观看日韩国产 | 欧美日韩高清在线 | 五月天综合激情网 | 国产小视频在线免费观看 | 天天添夜夜操 | 欧美一二三区在线观看 | 亚洲综合国产精品 | 玖操| 国产成人福利在线 | 99久久精品国产亚洲 | 黄色国产高清 | 黄色一级影院 | 日韩高清在线看 | 亚洲激情在线播放 | 免费精品在线 | 国产精品毛片一区 | 亚洲精品美女久久久久网站 | 欧美在线观看视频一区二区 | 国产日本在线观看 | 亚洲国产一区二区精品专区 | 日批视频国产 | 久久成熟 | 日韩欧美在线国产 | 国产成年免费视频 | 天天射天天干天天操 | 国产99久久久国产精品 | 99久久99久久精品国产片 | 国产高清专区 | 国产精品久久久久久久99 | 国产精品丝袜久久久久久久不卡 | www操操操| 久久与婷婷 | 日韩理论电影网 | 日韩一区二区免费在线观看 | 香蕉久久久久 | 在线观影网站 | 欧美黑人xxxx猛性大交 | 国内亚洲精品 | 少妇精品久久久一区二区免费 | 视频一区二区在线观看 | 悠悠av资源片 | 欧美 日韩 成人 | 在线视频国产区 | 中文字幕国产 | 日韩在线免费看 | 国产精品一区二区在线播放 | 精品国产理论片 | 99精品欧美一区二区 | 午夜精品中文字幕 | 少妇啪啪av入口 | 天天摸夜夜操 | 国产精品刺激对白麻豆99 | 麻豆精品91 | 97色涩 | 亚洲精品欧洲精品 | 911香蕉 | 国产精品精品 | 久久日韩精品 | 天天综合网久久综合网 | 婷婷五天天在线视频 | 天天操天天干天天摸 | 色黄www小说 | 久久艹国产 | 精品免费一区二区三区 | 欧美三级免费 | 久久久久久久久久久影院 | 免费视频成人 | 五月天电影免费在线观看一区 | 激情综合网天天干 | 日日躁天天躁 | 国产精品videossex国产高清 | 人人精品 | 人成在线免费视频 | 成人在线观看资源 | 97小视频| 亚洲h在线播放在线观看h | 玖操| 日韩精品视频在线观看免费 | 麻豆影视在线观看 | 91丨九色丨蝌蚪丨对白 | 999视频网站 | 在线精品视频免费观看 | 在线观看色网站 | 黄a网 | a天堂免费 | 午夜精品在线看 | 99综合久久| 亚洲更新最快 | 欧美日韩国产精品爽爽 | 久久激情五月丁香伊人 | 久久这里只有精品视频首页 | 99精品在线直播 | 日韩欧美高清一区二区三区 | 国产+日韩欧美 | 亚洲成人在线免费 | 成人福利在线观看 | 久久精品3 | 丰满少妇高潮在线观看 | 久久av观看 | 黄p网站在线观看 | 日韩视频中文字幕在线观看 | 成人免费观看在线视频 | 激情电影影院 | 丁香六月在线 | www国产亚洲精品久久麻豆 | 亚洲国产精品成人va在线观看 | 婷婷五天天在线视频 | 96超碰在线 | 日日夜操 | 欧美精品资源 | 精品一区二三区 | 蜜臀精品久久久久久蜜臀 | 超碰人人91 | 99激情网| 天天综合久久 | 久热爱 | 天天超碰 | 91九色成人 | 亚洲资源在线 | 亚州国产精品视频 | 久影院| 色婷婷丁香 | 日日夜夜狠狠操 | 国产一区在线不卡 | 国产丝袜 | 色99之美女主播在线视频 | 色婷婷福利 | 天天干,夜夜操 | 久久久久久久久久亚洲精品 | 在线观看国产麻豆 | 亚洲日本精品视频 | 中文字幕国产在线 | 国产精品永久在线 | 久久久久国产精品一区二区 | 婷婷丁香狠狠爱 | 色综合色综合久久综合频道88 | 在线观看免费一级片 | 最近最新最好看中文视频 | av丝袜在线 | 久久不射网站 | 99视频这里只有 | 婷婷网在线 | 久久国产精品精品国产色婷婷 | 99久久久久成人国产免费 | 久久国产亚洲视频 | 日本精品中文字幕在线观看 | 亚洲欧美在线视频免费 | 91九色porn在线资源 | 中文字幕中文字幕中文字幕 | 国产精品久久久久久久久婷婷 | 欧美午夜性 | 日韩欧美国产精品 | 三级小视频在线观看 | 国产日产精品久久久久快鸭 | 亚洲黄在线观看 | 欧美激情另类 | 成人h视频在线播放 | 亚洲理论电影网 | 色五月激情五月 | 中文字幕中文字幕中文字幕 | 国产中文字幕视频在线 | 国产在线视频一区二区三区 | 久久看免费视频 | 婷婷色五| 999久久a精品合区久久久 | 五月天开心 | 一个色综合网站 | 亚洲日韩精品欧美一区二区 | 国产美女视频免费 | 午夜在线免费观看视频 | 99久久精品国产一区二区三区 | 国产中文字幕第一页 | 狠狠躁天天躁 | 91porny九色91啦中文 | 九九精品视频在线 | 日韩在线网址 | 美女福利视频一区二区 | 精品一区二区免费视频 | 成人网在线免费视频 | 91精品一区国产高清在线gif | 天天综合日日夜夜 | 国产中文字幕国产 | 性色在线视频 | 精品一区欧美 | 日韩在线视频观看 | 人人澡人人澡人人 | 免费av网站观看 | 日本少妇高清做爰视频 | 狠狠狠色丁香婷婷综合久久五月 | 91av在线免费| 久久久久久久综合色一本 | 久久黄色影视 | 成人97人人超碰人人99 | 亚洲精品乱码久久久久久写真 | 在线之家免费在线观看电影 | 国产精品久久久久久一区二区三区 | 99re热精品视频 | 99理论片 | 国产精品毛片一区二区三区 | 久久99精品国产91久久来源 | 久久久免费播放 | 99精品黄色片免费大全 | 又爽又黄又无遮挡网站动态图 | 中文字幕电影一区 | 久久国产露脸精品国产 | 国产精品免费不 | 国产 亚洲 欧美 在线 | 日韩高清在线看 | 亚洲人人av| 色姑娘综合网 | 欧美日韩国产网站 | 久久天天躁狠狠躁夜夜不卡公司 | 免费看污黄网站 | 久久免费视频一区 | 性色av免费观看 | 亚洲欧洲精品一区二区精品久久久 | 日日日爽爽爽 | 中文字幕在线观看免费观看 | 国产成人亚洲在线电影 | 国产高清一 | 97超碰人人澡 | 久草观看视频 | 精品一二| av网站地址| 999精品网| 成人a视频 | 国产美女视频免费 | 在线黄色毛片 | 天天干天天草天天爽 | 亚洲一级免费电影 | 久久理论片 | 奇米影视8888在线观看大全免费 | 天天综合入口 | 99热这里只有精品在线观看 | 久久天天躁夜夜躁狠狠躁2022 | 国产视频在线免费观看 | 国产麻豆精品一区 | 91视频在线免费下载 | 久久99精品热在线观看 | 色九九视频 | 婷婷综合| 深爱激情亚洲 | 91精品国产91p65 | 九色精品 | 亚洲男男gaygayxxxgv | 黄色毛片网站在线观看 | 亚洲欧美经典 | 一区二区丝袜 | 久久久久欧美精品 | 久久精品视频日本 | 日韩电影中文字幕在线 | 久久综合欧美精品亚洲一区 | 国产毛片久久久 | 亚洲精品视频在线 | 久久久久久综合网天天 | 天天色天天色天天色 | 日韩精品免费在线观看 | 成人啪啪18免费游戏链接 | 99精彩视频在线观看免费 | 中文字幕 国产视频 | 国产成人久久精品亚洲 | 999在线视频| 91传媒视频在线观看 | 欧美激情视频一区 | 国产区精品在线观看 | 久久精品久久综合 | 91污在线观看 | 国产一级免费观看视频 | 日韩手机在线 | 91av福利视频 | 国产福利精品一区二区 | 91在线入口| 久草免费色站 | 色www精品视频在线观看 | 久久久久欧美精品 | 国产视频综合在线 | 成人黄色小视频 | 精品国产免费看 | 午夜精品久久久久久久爽 | 91av片| 亚洲欧美日韩中文在线 | 国产一级性生活 | 人人干天天干 | 久久免费视频精品 | 五月天色中色 | 深爱五月激情五月 | 五月天天在线 | 色网站在线 | 欧美久久久久久久 | 粉嫩一区二区三区粉嫩91 | 99久高清在线观看视频99精品热在线观看视频 | 少妇高潮流白浆在线观看 | 久久99久久99久久 | 欧美一级大片在线观看 | 色综合 久久精品 | 久久国产免 | 亚洲va欧美| 日韩亚洲欧美中文字幕 | 99久久国产免费免费 | 亚洲成av片人久久久 | 欧美性护士 | 日本中文字幕一二区观 | 六月丁香色婷婷 | 99久久激情视频 | 精品国产成人av | 国产视频中文字幕在线观看 | 97精品在线 | 99精品99 | 国产精品久久久久久久久久久久久 | 日本精品中文字幕在线观看 | 国产精品99久久99久久久二8 | 国产一区黄色 | 久久久久久久免费看 | 免费人做人爱www的视 | 日韩欧美精品在线观看视频 | 91精品在线麻豆 | 亚洲国产精品视频 | 免费日韩一区二区 | 在线观看不卡的av | 国产精品刺激对白麻豆99 | 一区二区三区免费在线观看 | 亚洲精品在线观 | 天天在线视频色 | 在线你懂的视频 | 亚洲国产理论片 | 波多野结衣亚洲一区二区 | 久久久精品久久日韩一区综合 | 中文字幕一区在线观看视频 | 日本精品中文字幕在线观看 | 有码一区二区三区 | 久久国产香蕉视频 | 亚洲高清视频在线观看 | 国产一级免费观看 | 综合网成人 | 国产一级精品绿帽视频 | 欧美国产高清 | 精品国产一区二区三区久久久蜜臀 | 国产精品一二 | 精品久久久久久亚洲综合网站 | 少妇资源站 | 亚洲国产精品一区二区尤物区 | 欧美久久综合 | 成人av av在线| 久久久综合九色合综国产精品 | 日韩免费av网址 | 午夜视频二区 | 日本婷婷色 | 久久综合日 | 一区久久久 | 夜夜夜草 | 看v片 | 国产午夜免费视频 | 婷婷深爱网 | 成人资源在线观看 | 成人国产电影在线观看 | 久草网首页 | 久日视频 | 在线观看91久久久久久 | 国产亚洲精品久久久久久无几年桃 | 在线观看黄色av | 高清av在线 | 日韩在线观看视频网站 | 成人av免费在线观看 | 天天操天天操天天操 | 日韩免费看片 | 在线精品亚洲一区二区 | 黄在线免费看 | 91麻豆精品91久久久久同性 | 超碰在线亚洲 | 一区二区三区中文字幕在线观看 | 成人免费视频免费观看 | 亚洲狠狠丁香婷婷综合久久久 | 久久久精华网 | 日本一区二区高清不卡 | 最近在线中文字幕 | 成 人 黄 色 视频播放1 | 欧美影院久久 | 亚洲一区二区三区毛片 | 九九日九九操 | 国产精品黑丝在线观看 | 日韩中文字幕免费在线观看 | 天天色天天色天天色 | 午夜av在线电影 | 国产亚洲日 | 四虎国产精品成人免费4hu | 中文字幕在线一区观看 | 十八岁免进欧美 | 青春草免费在线视频 | 国产字幕在线观看 | 午夜av在线电影 | 中文日韩在线 | 日韩mv欧美mv国产精品 | 91久久国产综合精品女同国语 | 欧美a免费 | 国产资源网 | 国产精品不卡av | 九九在线免费视频 | 国产美女网站在线观看 | 最近中文字幕大全中文字幕免费 | 日日躁夜夜躁aaaaxxxx | 五月婷亚洲 | 国产少妇在线观看 | 看av免费网站 | 欧美成人xxx | av电影中文字幕 | 一区二区三区视频在线 | 99久久精品日本一区二区免费 | 深爱激情久久 | 亚洲一级电影视频 | 国产999精品久久久久久绿帽 | 91精品国产三级a在线观看 | 久久久网址 | 日韩欧美一区二区三区视频 | 天堂av观看 | 激情自拍av | 久久色在线观看 | 欧美日韩精品在线一区二区 | 国产亚洲精品综合一区91 | 日韩免费一级a毛片在线播放一级 | 日韩精品网址 | 天天添夜夜操 | 国产黄色av | 97超碰资源总站 | 亚洲精品国内 | 久久精品99国产国产 | 狠狠地操| 中文字幕在线播放第一页 | 日韩色爱 | 友田真希x88av | 热re99久久精品国产66热 | 亚洲午夜精品电影 | 国产成人在线观看 | 亚洲 综合 国产 精品 | 香蕉久草 | 国产成人精品国内自产拍免费看 | 欧美日韩性 | 91精品91| 午夜精品久久久久久久99 | 成人h动漫在线看 | 国产精品欧美久久久久无广告 | 伊人婷婷 | 一级欧美日韩 | 天天爱天天射天天干天天 | 一区二区三区在线免费观看 | 欧美污网站 | 亚洲高清激情 | 亚洲欧美成aⅴ人在线观看 四虎在线观看 | 视频二区在线 | 国产日本亚洲 | 国产精品永久免费在线 | 久久久久久高清 | 91av在线免费视频 | 手机在线视频福利 | 婷婷激情五月 | 二区三区毛片 | 国产精品欧美一区二区三区不卡 | 涩涩网站在线看 | 亚洲精品福利视频 | 国产1区2区3区在线 亚洲自拍偷拍色图 | 天天色天天草天天射 | 日韩在线观看你懂的 | 中文字幕高清视频 | 亚洲黄色三级 | 91porny九色91啦中文 | 亚洲精品小视频 | 免费av影视| 欧美日韩久久久 | 国产精品12345| 日韩av影片在线观看 | 在线观看色视频 | 午夜av免费在线观看 | 伊人久久电影网 | 麻豆视频免费入口 | 国产精品日韩在线观看 | 91视频com| 色偷偷人人澡久久超碰69 | 亚州日韩中文字幕 | a级一a一级在线观看 | 免费a视频在线 | 亚洲成人黄 | 国产精品久久久久久久久久尿 | 久久久国产一区 | 国产一级片在线播放 | 黄色三级免费观看 | 午夜在线观看影院 | 99久久99久久精品国产片果冰 | 亚洲在线 | 日韩乱码中文字幕 | 中文字幕欧美日韩va免费视频 | 亚洲婷婷丁香 | 国内小视频在线观看 | 欧美亚洲国产日韩 | 久久人人爽人人片av | 91伊人久久大香线蕉蜜芽人口 | 午夜久久久精品 | 午夜国产成人 | 日韩欧美精品一区 | 天天色播 | 在线视频手机国产 | 麻豆超碰| av电影中文字幕 | 日韩精品一区二区三区电影 | 在线91网| 国产亚洲婷婷免费 | av网站在线观看播放 | 国产黄色片一级三级 | 99视频精品免费视频 | 97在线观看免费观看高清 | 国产成人高清av | 日韩成人邪恶影片 | 日韩精品免费在线视频 | 色资源网在线观看 | 成人午夜片av在线看 | 精品国产99国产精品 | 国产精品成人自拍 | 男女啪啪视屏 | av大全在线播放 | 丁香五月网久久综合 | 成 人 黄 色 视频免费播放 | 手机在线黄色网址 | 免费人成网| 国产日韩中文字幕 | 99999精品视频 | 亚洲视频在线视频 | 婷婷中文字幕 | 亚洲国产精品久久久久久 | 国产精品成人久久久久久久 | 999电影免费在线观看 | 66av99精品福利视频在线 | 五月婷婷在线视频 | 国产黄色免费观看 | 国产成人精品三级 | 一区二区三区免费在线观看 | 国产精品 日韩 | 丁香激情综合国产 | 天天操狠狠操网站 | av高清免费在线 | 久久久片| 99久久精品国产一区二区三区 | 99在线视频网站 | 91av视频免费观看 | 免费情趣视频 | 婷婷夜夜 | 欧美在线99 | 999久久久久久| 日韩一区二区免费播放 | 伊人中文在线 | 国产乱对白刺激视频不卡 | 精品视频免费 |