openwrt/include
Piotr Dymacz bf4630e5ad build: add helpers for generating QSDK sysupgrade compatible images
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. For example, in case of
NOR-only boards, below mapping is used (section name -> mtd name):

  hlos*   -> 0:HLOS
  rootfs* -> rootfs

And for boards with NAND (kernel inside UBI):

  ubi* -> rootfs

Above mappings come from unmodified QSDK sources and might be wrong for
boards running custom or modified QSDK-based firmware. Some of vendors
adjust them to meet their modified mtd layout or features like recovery
or dual-image support.

This adds simple script 'mkits-qsdk-ipq-image.sh' (based on 'mkits.sh')
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 universal in a way it allows to include as many sections
as needed. To make use of it, two generic/basic build recipes for NOR
and NAND based boards are also included in 'image-commands.mk':

  Build/qsdk-ipq-factory-nand
  Build/qsdk-ipq-factory-nor

Example usage for board with UBI in NAND:

  IMAGE/nand-factory.bin := append-ubi | qsdk-ipq-factory-nand

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2019-02-25 17:36:16 +01:00
..
site include/site: add powerpc64 config 2017-10-24 13:24:04 +02:00
autotools.mk treewide: fix build depends to refer to source package names 2018-01-13 19:54:44 +01:00
cmake.mk build: use CMAKE_SOURCE_SUBDIR variable to cmake.mk 2018-09-29 17:23:11 +02:00
debug.mk include: remove trailing whitespaces 2015-03-29 07:29:18 +00:00
depends.mk build: add missing wildcard for ignoring .pkgdir in dependency checks 2017-02-05 22:17:30 +01:00
device_table.txt image: ensure that /dev/console exist in rootfs images 2013-08-27 12:02:58 +00:00
download.mk download.mk: enable DownloadMethod/github_archive 2018-07-05 01:30:57 +08:00
feeds.mk build: add ABI_VERSION to binary package names 2019-01-19 14:32:12 +01:00
hardened-ld-pie.specs build: add hardened builds with PIE (ASLR) support 2018-01-27 16:46:45 +01:00
hardening.mk build: fix ASLR for LTO packages 2018-07-30 14:26:16 +02:00
host-build.mk build: do not override CCACHE_DIR when ccache is disabled 2018-07-24 15:23:05 +02:00
image-commands.mk build: add helpers for generating QSDK sysupgrade compatible images 2019-02-25 17:36:16 +01:00
image-legacy.mk image: fix ar71xx legacy images 2017-07-15 07:02:59 +02:00
image.mk build: Accept BIN_DIR parameter for legacy-images 2019-02-17 19:22:39 +01:00
kernel-build.mk include/kernel-build.mk: fix kernel rebuild on backport patch changes 2018-07-14 13:07:34 +02:00
kernel-defaults.mk kernel: fix downloading rcX releases 2018-12-03 09:34:57 +01:00
kernel-version.mk kernel: bump 4.19 to 4.19.25 2019-02-25 17:33:16 +01:00
kernel.mk build: fix build dependency of kmod .ipk with version filtered files 2018-12-18 20:04:17 +00:00
netfilter.mk netfilter: Add fib support for nftables 2018-12-16 00:57:20 +01:00
nls.mk treewide: fix build depends to refer to source package names 2018-01-13 19:54:44 +01:00
package-bin.mk build: use if-then to avoid non-zero return codes in bin/ packaging code 2017-01-23 13:49:45 +01:00
package-defaults.mk include/package-defaults.mk: fix default Build/Prepare with empty ./src 2018-03-07 09:59:08 +01:00
package-dumpinfo.mk build: expose ABI version in .packageauxvars 2019-01-19 14:32:01 +01:00
package-ipkg.mk build: formatting fixes for per-provide ABI_VERSION suffixes 2019-01-24 12:51:39 +01:00
package-seccomp.mk include: add a seccomp filter install wrapper 2015-03-26 10:57:56 +00:00
package.mk build: fix STAGING_DIR cleaning for packages 2019-01-30 12:32:07 +01:00
prereq-build.mk build: fix umask detection bashism 2019-01-30 12:39:18 +01:00
prereq.mk include: extend SetupHostCommand macro to accept more arguments 2018-04-05 13:58:15 +02:00
quilt.mk build: Use LINUX_DIR for Kernel/Patch 2019-01-30 13:20:14 +01:00
rootfs.mk include/rootfs.mk: remove boot directory 2018-11-26 12:05:44 +01:00
scan.awk build: propagate override information to .packageinfo 2015-02-09 12:09:31 +00:00
scan.mk build: Fix print without color 2019-02-17 19:30:34 +01:00
scons.mk build: use CXXFLAGS if defined 2016-10-13 17:04:43 +02:00
shell.sh build: use mkhash to replace various quirky md5sum/openssl calls 2017-01-05 11:09:12 +01:00
subdir.mk build: remove GNU time dependency 2018-08-05 00:06:27 +02:00
target.mk hostapd: add basic variant 2018-10-16 15:07:41 +01:00
toolchain-build.mk toolchain: Include hardening.mk for toolchain build 2019-01-24 21:52:39 +01:00
toplevel.mk build: rename .packagesubdirs to .packageauxvars 2019-01-19 14:31:56 +01:00
u-boot.mk u-boot.mk: Fix building of recent U-Boot sources 2019-01-26 21:46:32 +01:00
uclibc++.mk toolchain: eliminate the INSTALL_LIBSTDCPP config symbol and make c++ support mandatory - fixes recursive config symbol dependency issues 2013-05-09 20:50:49 +00:00
unpack.mk build: unzip: perform operations quietly 2017-01-05 11:09:13 +01:00
verbose.mk include/verbose.mk: Add sc to failure message 2018-07-30 10:43:36 +02:00
version.mk base-files: fix HOME_URL replace 2018-08-02 07:54:40 +02:00