mxs: add sdcard image builder
[openwrt/svn-archive/archive.git] / target / linux / mxs / image / gen_mxs_sdcard_img.sh
1 #!/usr/bin/env bash
2
3 #
4 # Copyright (C) 2015 OpenWrt.org
5 #
6 # This is free software, licensed under the GNU General Public License v2.
7 # See /LICENSE for more information.
8 #
9
10 set -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
16 OUTPUT="$1"
17 BOOTFS="$2"
18 ROOTFS="$3"
19 BOOTFSSIZE="$4"
20 ROOTFSSIZE="$5"
21 UBOOT="$6"
22
23 head=4
24 sect=63
25
26 # Set the u-boot storage to 2M
27 set `ptgen -o $OUTPUT -h $head -s $sect -l 1024 -t 53 -p 2M -t c -p ${BOOTFSSIZE}M -t 83 -p ${ROOTFSSIZE}M`
28
29 UBOOTOFFSET="$(($1 / 512))"
30 UBOOTSIZE="$(($2 / 512))"
31 BOOTOFFSET="$(($3 / 512))"
32 BOOTSIZE="$(($4 / 512))"
33 ROOTFSOFFSET="$(($5 / 512))"
34 ROOTFSSIZE="$(($6 / 512))"
35
36 dd bs=512 if="$UBOOT" of="$OUTPUT" seek="$UBOOTOFFSET" conv=notrunc
37 dd bs=512 if="$BOOTFS" of="$OUTPUT" seek="$BOOTOFFSET" conv=notrunc
38 dd bs=512 if="$ROOTFS" of="$OUTPUT" seek="$ROOTFSOFFSET" conv=notrunc