Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.



Published on

  • Be the first to comment

  • Be the first to like this


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