U-Boot - Computer Science

Download Report

Transcript U-Boot - Computer Science

U-Boot
CS-423
Dick Steflik
U-Boot
• Actual Name: Das U-Boot
• Universal Bootstrap Loader
• Used on PPC, ARM, AVR32, MIPS, x86,
68K, Nios and MicroBlaze architectures
• GNU General Public License
Source Code
• http://git.denx.de
NGW100
• Connect NGW100 to Host PC with serial cable
• In Hyperterminal create a profile called ngw100
(115000,8,1,1,0), start connection
• Plug-in power to ngw100 to start boot-up
• To access U-Boot interrupt the boot-up process by
hitting any key within the first 2 sec of the boot-up
process
• Commandline interface w/help
U-Boot Commands
• Information Commands
–
–
–
–
–
bdinfo – list board information on console
coninfo – list console information
flinfo – list flash memory information
iminfor – list application image information
help – lists commands , for help on specific command type help command
U-Boot Commands
•
Memory Commands
–
–
–
–
–
base – print or set base address
crc32 – calculate the crc32 checksum over an address range
cmp – compare two memory ranges (cmp staddr1 staddr2 size (hex))
cp – copy memory ( cp source targer size (hex))
md – display memory ( md (.b,.w,.l) addr size (hex))
• .b-byte , .w-word, .l-long
–
–
–
–
–
mm – modify memory (mm (.b,.w,.l) addr (hex)) will prompt for new value
mtest – simple memory test (mtest start end pattern (hex))
mw – memory write (mw [.b, .w, .l] address value [count] (hex))
nm – memory modify (nm [.b, .w, .l] address (hex))
loop – infinite loop on address range (loop [.b, .w, .l] address number_of_objects (hex))
U-Boot Commands
•
Flash Memory Commands
–
–
–
–
–
cp – copy memory (cp [.b, .w, .l] source target count (hex))
flinfo – print Flash memory information
erase – erase flash memory (see help for options)
protect – enable or disable flash protection
mtdparts – define a Linux compatible Memory Technology Device (MTD) partition
scheme (see manual for more info on this command)
U-Boot Commands
•
Execution Control Commands
– autoscr - run script from memory
– bootm - boot application image from memory
– go - start application at address 'addr‘
•
Download Commands
–
–
–
–
–
–
bootp - boot image via network using BOOTP/TFTP protocol
dhcp - invoke DHCP client to obtain IP/boot params
loadb - load binary file over serial line (kermit mode)
loads - load S-Record file over serial line
rarpboot- boot image via network using RARP/TFTP protocol
tftpboot- boot image via network using TFTP protocol
U-Boot Commands
•
Environment Variables Commands – these are environment variables that are
used during boot up of the application image, uBoot loads the environment
variables form persistent storage (flash) as part of the boot strap. To remove a
variable set it’s value to null. To create a new one set the name to a value (this
will go away when the system is rebooted, to make it permanent do a saveenv
before the boot or power down)
–
–
–
–
–
printenv- print environment variables
saveenv - save environment variables to persistent storage
setenv - set environment variables (set name value )
run - run commands in an environment variable
bootd - boot default, i.e., run 'bootcmd'