mvebu: use ext4/f2fs overlay filesystem for solidrun clearfog
Signed-off-by: Felix Fietkau <nbd@nbd.name>
This commit is contained in:
		@@ -34,7 +34,6 @@ endef
 | 
			
		||||
# MBR:            2048 sectors
 | 
			
		||||
# Partition 1:   32768 sectors
 | 
			
		||||
# Partition 2:   98304 sectors (configurable)
 | 
			
		||||
# Partition 3: 7611392 sectors (configurable, depends on p2 size)
 | 
			
		||||
 | 
			
		||||
define Build/boot-scr
 | 
			
		||||
	rm -f $@.bootscript
 | 
			
		||||
@@ -50,16 +49,11 @@ define Build/boot-img
 | 
			
		||||
endef
 | 
			
		||||
 | 
			
		||||
define Build/sdcard-img
 | 
			
		||||
	rm -rf $@ $@.rootfsdata $@.tmp
 | 
			
		||||
	mkdir -p $@.tmp
 | 
			
		||||
	ROOTFS_SIZE=$$(( $(CONFIG_TARGET_ROOTFS_PARTSIZE) * 1024 * 2 )); \
 | 
			
		||||
	DATA_SIZE=$$(( 7709696 - ($(CONFIG_TARGET_ROOTFS_PARTSIZE) * 1024 * 2) )); \
 | 
			
		||||
	make_ext4fs -J -l $$DATA_SIZE $@.rootfsdata $@.tmp && \
 | 
			
		||||
	./gen_mvebu_sdcard_img.sh 7744512 $@ \
 | 
			
		||||
	./gen_mvebu_sdcard_img.sh $@ \
 | 
			
		||||
		"$(BIN_DIR)/uboot-mvebu-clearfog/openwrt-mvebu-clearfog-u-boot-spl.kwb" \
 | 
			
		||||
		c 32768 $@.boot \
 | 
			
		||||
		83 $$ROOTFS_SIZE $(IMAGE_ROOTFS) \
 | 
			
		||||
		83 $$DATA_SIZE $@.rootfsdata
 | 
			
		||||
		83 $$ROOTFS_SIZE $(IMAGE_ROOTFS)
 | 
			
		||||
endef
 | 
			
		||||
 | 
			
		||||
define Device/Default
 | 
			
		||||
@@ -182,7 +176,7 @@ define Device/armada-388-clearfog
 | 
			
		||||
  KERNEL_INSTALL := 1
 | 
			
		||||
  KERNEL := dtb | kernel-bin
 | 
			
		||||
  DEVICE_TITLE := SolidRun ClearFog
 | 
			
		||||
  DEVICE_PACKAGES := uboot-mvebu-clearfog
 | 
			
		||||
  DEVICE_PACKAGES := uboot-mvebu-clearfog mkf2fs e2fsprogs
 | 
			
		||||
  IMAGES := bundle.tar.gz sdcard.img.gz
 | 
			
		||||
  IMAGE/bundle.tar.gz := clearfog-bundle
 | 
			
		||||
  IMAGE/sdcard.img.gz := boot-scr | boot-img | sdcard-img | gzip
 | 
			
		||||
 
 | 
			
		||||
@@ -18,12 +18,12 @@
 | 
			
		||||
#
 | 
			
		||||
 | 
			
		||||
usage() {
 | 
			
		||||
	echo "$0 <sectors> <outfile> <bootloader> [<type_partitionN> <sectors_partitionN> <img_partitionN>]?"
 | 
			
		||||
	echo "$0 <outfile> <bootloader> [<type_partitionN> <sectors_partitionN> <img_partitionN>]?"
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
# always require first 3 arguments
 | 
			
		||||
# then in pairs up to 8 more for a total of up to 4 partitions
 | 
			
		||||
if [ $# -lt 3 ] || [ $# -gt 15 ] || [ $(($#%3)) -ne 0 ]; then
 | 
			
		||||
if [ $# -lt 2 ] || [ $# -gt 15 ] || [ $((($# - 2) % 3)) -ne 0 ]; then
 | 
			
		||||
	usage
 | 
			
		||||
	exit 1
 | 
			
		||||
fi
 | 
			
		||||
@@ -31,7 +31,6 @@ fi
 | 
			
		||||
set -e
 | 
			
		||||
 | 
			
		||||
# parameters
 | 
			
		||||
IMGSIZE=$1; shift
 | 
			
		||||
OUTFILE="$1"; shift
 | 
			
		||||
BOOTLOADER="$1"; shift
 | 
			
		||||
 | 
			
		||||
@@ -41,7 +40,7 @@ dd if=/dev/zero of="$OUTFILE" bs=512 count=1 >/dev/null
 | 
			
		||||
printf "Done\n"
 | 
			
		||||
 | 
			
		||||
while [ "$#" -ge 3 ]; do
 | 
			
		||||
	ptgen_args="$ptgen_args -p $(($2 / 2)) -S 0x$1"
 | 
			
		||||
	ptgen_args="$ptgen_args -p $(($2 / 2 + 256)) -S 0x$1"
 | 
			
		||||
	parts="$parts$3 "
 | 
			
		||||
	shift; shift; shift
 | 
			
		||||
done
 | 
			
		||||
@@ -65,7 +64,11 @@ while [ "$#" -ge 2 ]; do
 | 
			
		||||
	parts="${parts#* }"
 | 
			
		||||
 | 
			
		||||
	printf "Writing %s to partition %i: " "$img" $i
 | 
			
		||||
	dd if="$img" of="$OUTFILE" bs=512 seek=$(($1 / 512)) conv=notrunc 2>/dev/null
 | 
			
		||||
	(
 | 
			
		||||
		cat "$img"
 | 
			
		||||
		# add padding to avoid leaving behind old overlay fs data
 | 
			
		||||
		dd if=/dev/zero bs=128k count=1 2>/dev/null
 | 
			
		||||
	) | dd of="$OUTFILE" bs=512 seek=$(($1 / 512)) conv=notrunc 2>/dev/null
 | 
			
		||||
	printf "Done\n"
 | 
			
		||||
 | 
			
		||||
	let i=i+1
 | 
			
		||||
 
 | 
			
		||||
@@ -7,7 +7,7 @@
 | 
			
		||||
 | 
			
		||||
define Profile/Default
 | 
			
		||||
	NAME:=Default Profile (all drivers)
 | 
			
		||||
	PACKAGES:= kmod-mwlwifi wpad-mini swconfig uboot-mvebu-clearfog
 | 
			
		||||
	PACKAGES:= kmod-mwlwifi wpad-mini swconfig uboot-mvebu-clearfog mkf2fs e2fsprogs
 | 
			
		||||
endef
 | 
			
		||||
 | 
			
		||||
define Profile/Default/Description
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user