TS-7840 U-boot development

From Technologic Systems Manuals

We do provide our u-boot sources, but we do not recommend rebuilding a custom uboot if it can be avoided. We provide our products for as long as possible, and occasionally these require software changes to support replacement components. Often these require no software changes, but if they do we can often update u-boot to add support for a new DDR chipset, or SPI flash without affecting Linux. If your u-boot is customized, it would need to be updated at that time to pull in this support. We will send out a product change notification to anyone who is subscribed to our PCS system when this happens.

Fetch the u-boot sources with:

git clone https://github.com/embeddedarm/u-boot-armada38x.git -b u-boot-2017.09

Download the toolchain here

Install with:

sudo bash poky-glibc-x86_64-meta-toolchain-qt5-cortexa9hf-neon-toolchain-2.2.2.sh

Compile u-boot with:

export ARCH=arm
export CROSS_COMPILE="/opt/poky/2.2.2/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-"

make ts7840_defconfig
make -j4

The resulting output file will be "./u-boot-spl.kwb". Copy this file to the TS-7840, and install it on the board with:

echo 0 > /sys/class/block/mmcblk0boot0/force_ro
dd if=u-boot-spl.kwb of=/dev/mmcblk0boot0 conv=fsync

If the system is rendered unbootable by modifying u-boot, this will require an RMA to recover.