Skip to content
Snippets Groups Projects
prepare_turris_image 833 B
Newer Older
board="$1"
branch="${2:-hbk}"

case "$board" in
	omnia)
		kernel="zImage"
		dtb="dtb"
		;;
	mox)
		kernel="Image"
		dtb="armada-3720-turris-mox.dtb"
		;;
	*)
		echo "Unsupported board: $board" >&2
		exit 1
		;;
esac

# Get appropriate medkit
wait4network
url="https://repo.turris.cz/$branch/medkit/$board-medkit-latest.tar.gz"
echo "Getting medkit from:" "$url"
wget -q "$url" -O medkit.tar.gz

# Repack as CPIO
mkdir root
tar -xzf medkit.tar.gz -C root
ln -sf /sbin/init root/init
( cd root && find . | cpio -H newc -o > ../root.cpio )
mkimage -A arm -O linux -T ramdisk -C none -d root.cpio root.uimage

# Prepare to TFTP
cp "root/boot/$kernel" "$TFTP_ROOT/"
cp -L "root/boot/$dtb" "$TFTP_ROOT/"
mv root.uimage "$TFTP_ROOT/"

# Clean after ourself
rm -rf root root.cpio medkit.tar.gz