
This is first step in migrating to a generic i.MX target which in the next steps will also get divided into arch-specific subtargets. In the result, this will make it possible to support, within a single target, also other modern NXP i.MX families, like the i.MX 7, i.MX 8 or recently introduced i.MX 9. Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
143 lines
2.6 KiB
Bash
Executable File
143 lines
2.6 KiB
Bash
Executable File
#
|
|
# Copyright (C) 2010-2015 OpenWrt.org
|
|
#
|
|
|
|
. /lib/imx.sh
|
|
|
|
RAMFS_COPY_BIN='blkid jffs2reset'
|
|
|
|
enable_image_metadata_check() {
|
|
case "$(board_name)" in
|
|
toradex,apalis_imx6q-eval |\
|
|
toradex,apalis_imx6q-ixora |\
|
|
toradex,apalis_imx6q-ixora-v1.1 )
|
|
REQUIRE_IMAGE_METADATA=1
|
|
;;
|
|
esac
|
|
}
|
|
enable_image_metadata_check
|
|
|
|
apalis_copy_config() {
|
|
apalis_mount_boot
|
|
cp -af "$UPGRADE_BACKUP" "/boot/$BACKUP_FILE"
|
|
sync
|
|
umount /boot
|
|
}
|
|
|
|
apalis_do_upgrade() {
|
|
apalis_mount_boot
|
|
get_image "$1" | tar Oxf - sysupgrade-apalis/kernel > /boot/uImage
|
|
get_image "$1" | tar Oxf - sysupgrade-apalis/root > $(rootpart_from_uuid)
|
|
sync
|
|
umount /boot
|
|
}
|
|
|
|
platform_check_image() {
|
|
local board=$(board_name)
|
|
|
|
case "$board" in
|
|
gw,imx6dl-gw51xx |\
|
|
gw,imx6dl-gw52xx |\
|
|
gw,imx6dl-gw53xx |\
|
|
gw,imx6dl-gw54xx |\
|
|
gw,imx6dl-gw551x |\
|
|
gw,imx6dl-gw552x |\
|
|
gw,imx6dl-gw553x |\
|
|
gw,imx6dl-gw5904 |\
|
|
gw,imx6dl-gw5907 |\
|
|
gw,imx6dl-gw5910 |\
|
|
gw,imx6dl-gw5912 |\
|
|
gw,imx6dl-gw5913 |\
|
|
gw,imx6q-gw51xx |\
|
|
gw,imx6q-gw52xx |\
|
|
gw,imx6q-gw53xx |\
|
|
gw,imx6q-gw5400-a |\
|
|
gw,imx6q-gw54xx |\
|
|
gw,imx6q-gw551x |\
|
|
gw,imx6q-gw552x |\
|
|
gw,imx6q-gw553x |\
|
|
gw,imx6q-gw5904 |\
|
|
gw,imx6q-gw5907 |\
|
|
gw,imx6q-gw5910 |\
|
|
gw,imx6q-gw5912 |\
|
|
gw,imx6q-gw5913 )
|
|
nand_do_platform_check $board $1
|
|
return $?;
|
|
;;
|
|
toradex,apalis_imx6q-eval |\
|
|
toradex,apalis_imx6q-ixora |\
|
|
toradex,apalis_imx6q-ixora-v1.1 )
|
|
return 0
|
|
;;
|
|
esac
|
|
|
|
echo "Sysupgrade is not yet supported on $board."
|
|
return 1
|
|
}
|
|
|
|
platform_do_upgrade() {
|
|
local board=$(board_name)
|
|
|
|
case "$board" in
|
|
gw,imx6dl-gw51xx |\
|
|
gw,imx6dl-gw52xx |\
|
|
gw,imx6dl-gw53xx |\
|
|
gw,imx6dl-gw54xx |\
|
|
gw,imx6dl-gw551x |\
|
|
gw,imx6dl-gw552x |\
|
|
gw,imx6dl-gw553x |\
|
|
gw,imx6dl-gw5904 |\
|
|
gw,imx6dl-gw5907 |\
|
|
gw,imx6dl-gw5910 |\
|
|
gw,imx6dl-gw5912 |\
|
|
gw,imx6dl-gw5913 |\
|
|
gw,imx6q-gw51xx |\
|
|
gw,imx6q-gw52xx |\
|
|
gw,imx6q-gw53xx |\
|
|
gw,imx6q-gw5400-a |\
|
|
gw,imx6q-gw54xx |\
|
|
gw,imx6q-gw551x |\
|
|
gw,imx6q-gw552x |\
|
|
gw,imx6q-gw553x |\
|
|
gw,imx6q-gw5904 |\
|
|
gw,imx6q-gw5907 |\
|
|
gw,imx6q-gw5910 |\
|
|
gw,imx6q-gw5912 |\
|
|
gw,imx6q-gw5913 )
|
|
nand_do_upgrade "$1"
|
|
;;
|
|
toradex,apalis_imx6q-eval |\
|
|
toradex,apalis_imx6q-ixora |\
|
|
toradex,apalis_imx6q-ixora-v1.1 )
|
|
apalis_do_upgrade "$1"
|
|
;;
|
|
esac
|
|
}
|
|
|
|
platform_copy_config() {
|
|
local board=$(board_name)
|
|
|
|
case "$board" in
|
|
toradex,apalis_imx6q-eval |\
|
|
toradex,apalis_imx6q-ixora |\
|
|
toradex,apalis_imx6q-ixora-v1.1 )
|
|
apalis_copy_config
|
|
;;
|
|
esac
|
|
}
|
|
|
|
platform_pre_upgrade() {
|
|
local board=$(board_name)
|
|
|
|
case "$board" in
|
|
toradex,apalis_imx6q-eval |\
|
|
toradex,apalis_imx6q-ixora |\
|
|
toradex,apalis_imx6q-ixora-v1.1 )
|
|
[ -z "$UPGRADE_BACKUP" ] && {
|
|
jffs2reset -y
|
|
umount /overlay
|
|
}
|
|
;;
|
|
esac
|
|
}
|