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