target: socfpga: Add Altera SoCFPGA support
[openwrt.git] / target / linux / socfpga / image / gen_socfpga_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 5 ] || {
12     echo "SYNTAX: $0 <file> <rootfs image> <rootfs size> <u-boot image> <cfg image>"
13     exit 1
14 }
15
16 OUTPUT="$1"
17 ROOTFS="$2"
18 ROOTFSSIZE="$3"
19 UBOOT="$4"
20 CFGFS="$5"
21
22 head=4
23 sect=63
24
25 set `ptgen -o $OUTPUT -h $head -s $sect -l 1024 \
26         -t a2 -p 1M                             \
27         -t 83 -p ${ROOTFSSIZE}M                 \
28         -t 83 -p 1M`
29
30 UBOOTOFFSET="$(($1 / 512))"
31 UBOOTSIZE="$(($2 / 512))"
32 ROOTFSOFFSET="$(($3 / 512))"
33 ROOTFSSIZE="$(($4 / 512))"
34 CFGFSOFFSET="$(($5 / 512))"
35 CFGFSSIZE="$(($6 / 512))"
36
37 dd bs=512 if="$UBOOT" of="$OUTPUT" seek="$UBOOTOFFSET" conv=notrunc
38 dd bs=512 if="$ROOTFS" of="$OUTPUT" seek="$ROOTFSOFFSET" conv=notrunc
39
40 mkdosfs "$CFGFS" -C 1024
41 dd bs=512 if="$CFGFS" of="$OUTPUT" seek="$CFGFSOFFSET" conv=notrunc