66
OSD3358-SM-RED
– User Guide
Rev. 1.0 9/19/2017
Octavo Systems LLC
Copyright 2017
5
Board images and software features
The OSD3358-SM-RED board is loaded with a Beagleboard compatible Linux image out of the
box. This pre-installed Linux image on the board is a modified version of Debian LXQT image
available on Beagleboard website (
https://beagleboard.org/latest-images
). Modifications to the
default image were made to customize the image to work with the hardware on the board. The
following changes were made to the default Linux image:
1. A new device tree specific to the OSD335x-SM-RED platform is used to make Linux
aware of the board specific hardware
2. The Roboticscape library (
http://www.strawsondesign.com/#!manual-install
) that comes
installed by default is modified to work with the sensors on board. Note that the present
version of the Roboticscape library is not compatible with the modified library that comes
installed out of the box on the RED board.
5.1
Boot up
The board goes through multiple stages during boot to a Linux environment. These stages are
described below:
1. TI Boot ROM: The processor contains a boot ROM that performs some peripheral
configuration required for boot up and passes the control to the next stage bootloader
2. MLO: This stage sets up pin-muxing, initializes the clocks and memory, and loads the
next stage bootloader
3. U-boot: This is the primary Linux bootloader. It looks for a boot source and reads the
boot configuration text file (uEnv.txt) for boot arguments from the boot source. It
specifies the root file system, performs additional initialization, loads and passes control
to the Linux kernel. A device tree binary file (hardware specific board configuration file)
specified in the configuration text file, is also passed to the kernel for additional setup.
4. Linux kernel: Decompresses and loads the kernel into memory, performs peripheral
initializations and mounts the file system that contains all the Linux applications.
Useful resources:
1. Linux core U-
http://processors.wiki.ti.com/index.php/Linux_Core_U-
http://www.denx.de/wiki/U-Boot/WebHome
3. Building U-Boot, Root Filesystem and Linux Kernel:
https://eewiki.net/display/linuxonarm/BeaBlack
5.2
Device tree
The OSD3358-SM-RED board has a device tree file that tells the Linux kernel about the
hardware on board. Derivative designs from the OSD33358-SM-RED will need to modify the
device tree appropriately. A Flattened Device Tree (FTD) is a data structure that describes the
hardware on the board to the Linux kernel. A compiled version, .dtb (Device Tree Binary) of this