mvebu: make sdcard bootloader option configurable
authorTomasz Maciej Nowak <tomek_n@o2.pl>
Wed, 14 Feb 2018 16:28:09 +0000 (17:28 +0100)
committerHauke Mehrtens <hauke@hauke-m.de>
Fri, 2 Mar 2018 20:33:07 +0000 (21:33 +0100)
Remove the necessity for boot loader from SD card image creation process
and make it configurable.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
target/linux/mvebu/image/Makefile
target/linux/mvebu/image/gen_mvebu_sdcard_img.sh

index a78269bf1fe02a294cd18dcc0fd4b70963228aa9..1f490905ff79468cdf63baa2f69b02fa2978a7f5 100644 (file)
@@ -44,10 +44,11 @@ define Build/boot-img
 endef
 
 define Build/sdcard-img
+       if [ -n "$(UBOOT)" ]; then UBOOT="$(STAGING_DIR_IMAGE)/$(UBOOT)"; fi; \
        ROOTFS_SIZE=$$(( $(CONFIG_TARGET_ROOTFS_PARTSIZE) * 1024 * 2 )); \
        SIGNATURE="$(SIGNATURE)" \
        ./gen_mvebu_sdcard_img.sh $@ \
-               "$(STAGING_DIR_IMAGE)/clearfog-u-boot-spl.kwb" \
+               $$UBOOT \
                c 32768 $@.boot \
                83 $$ROOTFS_SIZE $(IMAGE_ROOTFS)
 endef
@@ -206,6 +207,7 @@ define Device/armada-388-clearfog-pro
   IMAGE/sdcard.img.gz := boot-scr-cfpro | boot-img | sdcard-img | gzip | append-metadata
   DEVICE_DTS := armada-388-clearfog-pro armada-388-clearfog-base
   SUPPORTED_DEVICES := armada-388-clearfog-pro armada-388-clearfog
+  UBOOT := clearfog-u-boot-spl.kwb
 endef
 TARGET_DEVICES += armada-388-clearfog-pro
 
@@ -217,6 +219,7 @@ define Device/armada-388-clearfog-base
   IMAGES := sdcard.img.gz
   IMAGE/sdcard.img.gz := boot-scr-cfbase | boot-img | sdcard-img | gzip | append-metadata
   DEVICE_DTS := armada-388-clearfog-pro armada-388-clearfog-base
+  UBOOT := clearfog-u-boot-spl.kwb
 endef
 TARGET_DEVICES += armada-388-clearfog-base
 
index 63acc79f40f7803bbf7f479f6c37a77833fcba0b..67416ed80cfaa6c04d6a33bb85f8125b30a9e6ce 100755 (executable)
 #
 
 usage() {
-       echo "$0 <outfile> <bootloader> [<type_partitionN> <sectors_partitionN> <img_partitionN>]?"
+       echo "$0 <outfile> [<bootloader> <type_partitionN> <sectors_partitionN> <img_partitionN>]?"
 }
 
-# always require first 3 arguments
+# always require first 2 or 3 arguments
 # then in pairs up to 8 more for a total of up to 4 partitions
-if [ $# -lt 2 ] || [ $# -gt 15 ] || [ $((($# - 2) % 3)) -ne 0 ]; then
-       usage
-       exit 1
+if [ $# -lt 1 ] || [ $# -gt 14 ] || [ $((($# - 1) % 3)) -ne 0 ]; then
+       if [ $# -lt 2 ] || [ $# -gt 15 ] || [ $((($# - 2) % 3)) -ne 0 ]; then
+               usage
+               exit 1
+       else
+               BOOTLOADER="$2"
+       fi
 fi
 
 set -e
 
 # parameters
 OUTFILE="$1"; shift
-BOOTLOADER="$1"; shift
+if [ -n "$BOOTLOADER" ]; then
+       shift
+fi
 
 # generate image file
 printf "Creating $OUTFILE from /dev/zero: "
@@ -54,9 +60,11 @@ set `ptgen -o "$OUTFILE" -h $head -s $sect -l 1024 -S 0x$SIGNATURE $ptgen_args`
 printf "Done\n"
 
 # install bootloader
-printf "Writing bootloader: "
-dd of="$OUTFILE" if="$BOOTLOADER" bs=512 seek=1 conv=notrunc 2>/dev/null
-printf "Done\n"
+if [ -n "$BOOTLOADER" ]; then
+       printf "Writing bootloader: "
+       dd of="$OUTFILE" if="$BOOTLOADER" bs=512 seek=1 conv=notrunc 2>/dev/null
+       printf "Done\n"
+fi
 
 i=1
 while [ "$#" -ge 2 ]; do