Skip to content

Instantly share code, notes, and snippets.

@slavc
Last active January 15, 2019 14:07
Show Gist options
  • Save slavc/4d91291179831d30cfdf59a1e0a697b8 to your computer and use it in GitHub Desktop.
Save slavc/4d91291179831d30cfdf59a1e0a697b8 to your computer and use it in GitHub Desktop.
Vybrid VF610 tower board bootstrap instructions
# Instructions assume host OS is Fedora Linux.
#
# Clone and build u-boot
#
cd ~/src/
git clone git://git.denx.de/u-boot.git
cd u-boot
sudo dnf install arm-none-eabi-gcc-cs
export ARCH=arm
export CROSS_COMPILE=/usr/bin/arm-none-eabi-
make vf610twr_defconfig
make -j16
#
# Put the built u-boot on an SD card
#
dd if=u-boot.imx of=/dev/<SD-card> bs=1k seek=1
#
# Build the Linux kernel
#
mkdir -p ~/src
cd ~/src
git clone git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
cd linux
sudo dnf install arm-none-eabi-gcc-cs arm-none-eabi-newlib
export ARCH=arm
export CROSS_COMPILE=/usr/bin/arm-none-eabi-
make menuconfig # enable all the Vybrid stuff, most importantly the UART driver...
make -j16
# Kernel image is at arch/arm/boot/zImage, device tree blob is at arch/arm/boot/dts/vf610-twr.dtb
#
# Build busybox
#
sudo dnf install gcc-arm-linux-gnu glibc-arm-linux-gnu kernel-cross-headers
mkdir -p ~/src
cd ~/src
mkdir -p arm-linux-gnu-sysroot/usr/include/
cp -R /usr/arm-linux-gnu/include/* arm-linux-gnu-sysroot/usr/include
cp -R /usr/arm-linux-gnu/sys-root/* arm-linux-gnu-sysroot/
git clone git://busybox.net/busybox.git
cd busybox
export ARCH=arm
export CROSS_COMPILE=/usr/bin/arm-linux-gnu-
make defconfig
make menuconfig
# In 'Settings':
# * set 'Path to sysroot' to $HOME/src/arm-linux-gnu-sysroot
make -j32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment