Some checks failed
		
		
	
	Build Kernel / Set targets (push) Has been cancelled
				
			Build all core packages / build (malta/be) (push) Has been cancelled
				
			Build all core packages / build (x86/64) (push) Has been cancelled
				
			Build host tools / build-macos-latest (push) Has been cancelled
				
			Build host tools / build-linux-buildbot (push) Has been cancelled
				
			Build Kernel / Build Kernel with external toolchain (push) Has been cancelled
				
			Build Kernel / Check Kernel patches (push) Has been cancelled
				
			Build host tools / push-tools-container (push) Has been cancelled
				
			
		
			
				
	
	
		
			60 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			60 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
#!/usr/bin/env bash
 | 
						|
#
 | 
						|
# Licensed under the terms of the GNU GPL License version 2 or later.
 | 
						|
# Author: Piotr Dymacz <pepe2k@gmail.com>, based on mkits.sh.
 | 
						|
#
 | 
						|
# Qualcomm SDK (QSDK) sysupgrade compatible images for IPQ40xx, IPQ806x
 | 
						|
# and IPQ807x use FIT format together with 'dumpimage' tool from U-Boot
 | 
						|
# for verifying and extracting them. Based on 'images' sections names,
 | 
						|
# corresponding mtd partitions are flashed.
 | 
						|
# This is a simple script for generating FIT images tree source files,
 | 
						|
# compatible with the QSDK sysupgrade format. Resulting images can be
 | 
						|
# used for initial (factory -> OpenWrt) installation and would work
 | 
						|
# both in CLI and GUI. The script is also universal in a way it allows
 | 
						|
# to include as many sections as needed.
 | 
						|
#
 | 
						|
 | 
						|
usage() {
 | 
						|
	echo "Usage: `basename $0` output img0_name img0_file [[img1_name img1_file] ...]"
 | 
						|
	exit 1
 | 
						|
}
 | 
						|
 | 
						|
# We need at least 3 arguments
 | 
						|
[ "$#" -lt 3 ] && usage
 | 
						|
 | 
						|
# Target output file
 | 
						|
OUTPUT="$1"; shift
 | 
						|
 | 
						|
# Create a default, fully populated DTS file
 | 
						|
echo "\
 | 
						|
/dts-v1/;
 | 
						|
 | 
						|
/ {
 | 
						|
	description = \"OpenWrt factory image\";
 | 
						|
	#address-cells = <1>;
 | 
						|
 | 
						|
	images {" > ${OUTPUT}
 | 
						|
 | 
						|
while [ -n "$1" -a -n "$2" ]; do
 | 
						|
	[ -f "$2" ] || usage
 | 
						|
 | 
						|
	name="$1"; shift
 | 
						|
	file="$1"; shift
 | 
						|
 | 
						|
	echo \
 | 
						|
"		${name} {
 | 
						|
			description = \"${name}\";
 | 
						|
			data = /incbin/(\"${file}\");
 | 
						|
			type = \"Firmware\";
 | 
						|
			arch = \"ARM\";
 | 
						|
			compression = \"none\";
 | 
						|
			hash@1 {
 | 
						|
				algo = \"crc32\";
 | 
						|
			};
 | 
						|
		};" >> ${OUTPUT}
 | 
						|
done
 | 
						|
 | 
						|
echo \
 | 
						|
"	};
 | 
						|
};" >> ${OUTPUT}
 |