1#!/usr/bin/env bash 2 3# 4# Copyright (C) 2013 OpenWrt.org 5# 6# This is free software, licensed under the GNU General Public License v2. 7# See /LICENSE for more information. 8# 9 10set -x 11[ $# -eq 6 ] || { 12 echo "SYNTAX: $0 <file> <bootfs image> <rootfs image> <bootfs size> <rootfs size> <u-boot image>" 13 exit 1 14} 15 16OUTPUT="$1" 17BOOTFS="$2" 18ROOTFS="$3" 19BOOTFSSIZE="$4" 20ROOTFSSIZE="$5" 21UBOOT="$6" 22 23head=4 24sect=63 25 26set `ptgen -o $OUTPUT -h $head -s $sect -l 1024 -t c -p ${BOOTFSSIZE}M -t 83 -p ${ROOTFSSIZE}M` 27 28BOOTOFFSET="$(($1 / 512))" 29BOOTSIZE="$(($2 / 512))" 30ROOTFSOFFSET="$(($3 / 512))" 31ROOTFSSIZE="$(($4 / 512))" 32 33dd bs=1024 if="$UBOOT" of="$OUTPUT" seek=8 conv=notrunc 34dd bs=512 if="$BOOTFS" of="$OUTPUT" seek="$BOOTOFFSET" conv=notrunc 35dd bs=512 if="$ROOTFS" of="$OUTPUT" seek="$ROOTFSOFFSET" conv=notrunc 36