Trim-Slice U-Boot

From Utilite Wiki

Jump to: navigation, search



The Trim-Slice is using U-Boot boot-loader for low-level initializations and operating system loading. U-Boot is an open source firmware for a wide range of embedded systems (e.g. PowerPC, ARM, MIPS, x86, ColdFire, AVR32, NIOS, etc.). In this page we discuss only features and use cases related to Trim-Slice. For more information on U-Boot, please refer to Official U-Boot Homepage.

Supported O/S boot sources

The Trim-Slice U-Boot allows booting the operating system from the following Trim-Slice storage devices and interfaces:

  • Front SD card - intended to be used as the primary removable storage for software installations and updates.
  • External USB storage - may be used as an alternative removable storage.
  • Micro-SD card - intended to be used as a non-removable storage for O/S images.
  • Internal SATA storage - intended to be used as a non-removable storage for O/S images.
  • GbE interface - may be used for network O/S boot.

O/S boot sequence

The Trim-Slice O/S boot sequence is implemented with a boot script designed as a set of pre-defined U-Boot environment variables.

Admolition warning.png Altering the default boot sequence may preclude using Trim-Slice software update tools such as O/S installer.

The boot script searches the different Trim-Slice boot devices for a partition containing a valid boot.scr file in the / or /boot/ directory.

The boot script will attempt to boot from the various boot devices in the following order:

  • Front SD card
  • External USB storage
  • Micro-SD card
  • Internal SATA storage

Quick U-Boot command reference

This section provides quick U-Boot command reference. To get more information about a specific command, type help [command] in the U-Boot command line.
Please refer to the U-Boot project documentation for detailed description of the commands listed below.

Information commands

  • bdinfo - print Board Info structure
  • coninfo - print console devices and information
  • help - print online help

Memory commands

  • base - print or set address offset
  • crc32 - checksum calculation
  • cmp - memory compare
  • cp - memory copy
  • md - memory display
  • mm - memory modify (auto incrementing)
  • mtest - simple RAM test
  • mw - memory write (fill)
  • nm - memory modify (constant address)
  • loop - infinite loop on address range

Execution control commands

  • source - run script from memory
  • bootm - boot application image from memory
  • go - start application at address 'addr'
  • loop - infinite loop on address range
  • exit - exit script

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
  • loady - load binary file over serial line (ymodem mode)
  • rarpboot - boot image via network using RARP/TFTP protocol
  • tftpboot - boot image via network using TFTP protocol
  • ping - send ICMP ECHO REQUEST to network host

Environment variables commands

  • boot - boot default, i.e., run 'bootcmd'
  • bootd - boot default, i.e., run 'bootcmd'
  • editenv - edit environment variable
  • printenv - print environment variables
  • run - run commands in an environment variable
  • saveenv - save environment variables to persistent storage
  • setenv - set environment variables

File system support commands

  • ext2load - load binary file from a Ext2 filesystem
  • ext2ls - list files in a directory (default /)
  • fatinfo - print information about a FAT file system
  • fatload - load binary file from a FAT file system
  • fatls - list files in a FAT file system directory (default /)

GPIO support

  • gpio - CPU gpio access

I2C support

  • i2c - I2C sub-system

PCI support

  • pci - list and access PCI Configuration Space

SD/MMC support

  • mmc - SD/MMC sub-system

SPI flash support

  • sf - SPI flash sub-system

USB support

  • usb - USB sub-system control
  • usbboot - boot from USB device

Miscellaneous commands

  • echo - echo arguments to console
  • false - do nothing, unsuccessfully
  • itest - return true/false on integer compare
  • reset - Perform RESET of the CPU
  • showvar - print local hushshell variables
  • sleep - delay execution for some time
  • version - print monitor version
  • test - minimal test, like /bin/bash
  • true - do nothing, successfully
  • ? - alias for help
Personal tools