建立分区:
fdisk :0x4000000 : :
fdisk
Partition Map for MMC device -- Partition Type: DOS Part Start Sector Num Sectors UUID Type
-
-
-
Vendor: Man Snr f348b4bc Rev: 0.6 Prod: 8GND3R
Type: Removable Hard Disk
Capacity: 7456.0 MB = 7.2 GB ( x )
三个分区,对应的都是用扇区为单位进行表示的(一个扇区=512bits)
终端输入
printenv
显示如下内容
androidcrc=-
baudrate=
bootargs=lcd=at070tn92 tp=gslx680-linux root=/dev/mmcblk0p3 rw rootfstype=ext4
bootcmd=mmc read 0x48000000 ; bootm 0x48000000
bootcmd2=bootm 0x48000000
bootdelay=
bootfile=uImage
ethact=dwmac.c0060000
ethaddr=:e2:1c:ba:e8:
ethprime=RTL8211
fastboot=flash=mmc,:ubootpak:2nd:0x200,0x78000;flash=mmc,:2ndboot:2nd:0x200,0x4000\
;flash=mmc,:bootloader:boot:0x8000,0x70000;flash=mmc,:boot:ext4:0x00100000,0x04000000\
;flash=mmc,:system:ext4:0x04100000,0x2F200000;flash=mmc,:cache:ext4:0x33300000,0x1AC00000\
;flash=mmc,:misc:emmc:0x4E000000,0x00800000;flash=mmc,:recovery:emmc:0x4E900000,0x01600000\
;flash=mmc,:userdata:ext4:0x50000000,0x0;
fileaddr=
gatewayip=192.168.20.1
ipaddr=192.168.20.112
netmask=255.255.255.0
serverip=192.168.20.30
stderr=serial
stdin=serial
stdout=seri
然后就是输入
help
看看uboot可以进行的操作有什么了;
- do nothing, unsuccessfully
- do nothing, successfully
? - alias for 'help'
base - print or set address offset
bdinfo - print Board Info structure
boot - boot default, i.e., run 'bootcmd'
bootd - boot default, i.e., run 'bootcmd'
bootm - boot application image from memory
bootp - boot image via network using BOOTP/TFTP protocol
cmd - cmd [command] options...
cmp - memory compare
cp - memory copy
crc32 - checksum calculation
dhcp - boot image via network using DHCP/TFTP protocol
drawbmp - darw bmpfile on address 'addr' to framebuffer
env - environment handling commands
exit - exit script
ext4load- load binary file from a Ext4 filesystem
ext4ls - list files in a directory (default /)
ext4write- create a file in the root directory
fastboot- fastboot- use USB Fastboot protocol fatinfo - print information about filesystem
fatload - load binary file from a dos filesystem
fatls - list files in a directory (default /)
fatwrite- write file into a dos filesystem
fdisk - mmc list or create ms-dos partition tables (MAX TABLE )
go - start application at address 'addr'
goimage - start Image at address 'addr'
help - print command description/usage
i2c - I2C sub-system
i2cmod - set I2C mode
iminfo - print header information for application image
loadbmp - load bmpfile with command or 'bootlog' environment
loop - infinite loop on address range
md - memory display
mdio - MDIO utility commands
mii - MII utility commands
mm - memory modify (auto-incrementing address)
mmc - MMC sub system
mmcinfo - display MMC info
mtest - simple RAM read/write test
mw - memory write (fill)
nm - memory modify (constant address)
ping - send ICMP ECHO_REQUEST to network host
pmic - PMIC
printenv- print environment variables
reset - Perform RESET of the CPU
run - run commands in an environment variable
saveenv - save environment variables to persistent storage
sdfuse - sdfuse - read images from FAT partition of SD card and write them to booting device. setenv - set environment variables
showvar - print local hushshell variables
source - run script from memory
test - minimal test like /bin/sh
tftpboot- boot image via network using TFTP protocol
udown - Download USB
update_mmc- update mmc data version - print monitor, compiler and linker version
其中可以用来烧写内存的两条命令就是;
mmc
mmc - MMC sub system Usage:
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 setdsr <value> - set DSR register value
还有就是
update_mmc
update_mmc - update mmc data Usage:
update_mmc <dev no> <type> <mem> <addr> <length>
- type : 2ndboot | boot | raw | part update_mmc <dev no> boot 'mem' 'addr' 'length' [load addr]
- update data 'length' add boot header() on 'mem' to device addr,
and set jump addr with 'load addr'
if no [load addr], set jump addr default u-boot _TEXT_BASE_ update_mmc <dev no> raw 'mem' 'addr' 'length'
- update data 'length' on 'mem' to device addr. update_mmc <dev no> part 'mem' 'part no' 'length'
- update partition image 'length' on 'mem' to mmc 'part no'. Note.
- All numeric parameters are assumed to be hex.
所以可以通过tftp 把uImage和rootfs都放进去,uImage做成boot.img还有做,使用的方法就是直接烧进去分区地址里面,用的是
mmc write 0x48000000 131080 10806
然后对应的环境变量也要做修改
setenv bootcmd mmc read 0x48000000 \;bootm 0x48000000
saveenv
rese
这样,kernel的镜像就被烧写进去mmc的第二个分区里面了
rootfs的烧写则是需要用
update_mmc raw 0x48000000 0x8100000 0x1f400000
或者是
mmc write 0x48000000
然后可以正常使用。
reset