clearfog: Add a crude eMMC flashing script

Boot the board via UART with a USB flash disk loaded with
`usb-flash.img`:

  ./tools/kwboot -b ./u-boot-spl.kwb -t -p /dev/ttyUSB0
  usb start; fatload usb 0:1 00800000 boot.scr; source 00800000

Run this from within U-Boot:

  mount /dev/sda1 /mnt; sh /mnt/usb-reflash-factory.sh

Don't forget to re-jumper the board for eMMC boot afterwards (00111), do
not leave it in the UART mode (01001).

Change-Id: Iea55c065b2a7e2cf01eed2cbf7cf480d4db85f65
diff --git a/board/czechlight/clearfog/usb-flash-genimage.sh b/board/czechlight/clearfog/usb-flash-genimage.sh
index c907625..3ef30dd 100755
--- a/board/czechlight/clearfog/usb-flash-genimage.sh
+++ b/board/czechlight/clearfog/usb-flash-genimage.sh
@@ -2,6 +2,8 @@
 
 set -ex
 
+install -m 0644 -D ${BR2_EXTERNAL_CZECHLIGHT_PATH}/board/czechlight/clearfog/usb-reflash-factory.sh ${BINARIES_DIR}/usb-reflash-factory.sh
+
 mksquashfs ${BINARIES_DIR}/sdcard.img ${BINARIES_DIR}/sdcard.img.squashfs -root-owned -comp gzip -progress
 
 GENIMAGE_TMP="${BUILD_DIR}/genimage.tmp"
diff --git a/board/czechlight/clearfog/usb-genimage.cfg b/board/czechlight/clearfog/usb-genimage.cfg
index 5f0820a..d909262 100644
--- a/board/czechlight/clearfog/usb-genimage.cfg
+++ b/board/czechlight/clearfog/usb-genimage.cfg
@@ -6,7 +6,8 @@
 			"czechlight-clearfog.dtb",
 			"rootfs.cpio.uboot",
 			"u-boot-spl.kwb",
-			"sdcard.img.squashfs"
+			"sdcard.img.squashfs",
+			"usb-reflash-factory.sh"
 		}
 	}
 	size = 128M
diff --git a/board/czechlight/clearfog/usb-reflash-factory.sh b/board/czechlight/clearfog/usb-reflash-factory.sh
new file mode 100644
index 0000000..aec77c0
--- /dev/null
+++ b/board/czechlight/clearfog/usb-reflash-factory.sh
@@ -0,0 +1,16 @@
+#!/bin/sh
+
+set -ex
+
+mkdir /tmp/sdcard.image
+mount /mnt/sdcard.img.squashfs /tmp/sdcard.image/
+blkdiscard /dev/mmcblk0
+ddrescue --force /tmp/sdcard.image/sdcard.img /dev/mmcblk0
+echo 0 > /sys/block/mmcblk0boot0/force_ro
+ddrescue --force /mnt/u-boot-spl.kwb /dev/mmcblk0boot0
+echo 1 > /sys/block/mmcblk0boot0/force_ro
+echo 0 > /sys/block/mmcblk0boot1/force_ro
+ddrescue --force /mnt/u-boot-spl.kwb /dev/mmcblk0boot1
+echo 1 > /sys/block/mmcblk0boot1/force_ro
+sync
+echo b > /proc/sysrq-trigger