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