diff --git a/.github/scripts/test_sysupgrade.sh b/.github/scripts/test_sysupgrade.sh index 3a072ffb6..589967886 100755 --- a/.github/scripts/test_sysupgrade.sh +++ b/.github/scripts/test_sysupgrade.sh @@ -3546,7 +3546,14 @@ default_url_is "$F/openipc.gk7205v200-nor-lite-split.tgz" \ eval 'set_platform gk7205v200_lite; STUB_SOC=gk7205v200; STUB_SPLIT_PUBLISHED=1' default_url_is "$F/openipc.hi3516cv6xx-nor-lite-split.tgz" \ eval 'set_platform hi3516cv6xx_lite; STUB_SOC=hi3516cv6xx; STUB_SPLIT_PUBLISHED=1' +# dev and glibc live in the builder repo; a split-only board publishes -split +# there too (hi3516ev300, hi3518ev300), and the camera must ask for it. +default_url_is "$B/openipc.hi3516ev300-nor-dev-split.tgz" \ + eval 'set_platform hi3516ev300_dev dev; STUB_SOC=hi3516ev300; STUB_SPLIT_PUBLISHED=1' unset STUB_SPLIT_PUBLISHED +default_url_is "$B/openipc.hi3516ev300-nor-dev.tgz" \ + eval 'set_platform hi3516ev300_dev dev; STUB_SOC=hi3516ev300' + default_url_is "$F/openipc.ssc338q-nor-lite.tgz" true # --channel resolves the plain package from the manifest; the family fetches # the -split one beside it. A board that publishes only the split package diff --git a/br-ext-chip-hisilicon/board/hi3516ev200/hi3516ev300.generic.config b/br-ext-chip-hisilicon/board/hi3516ev200/hi3516ev300.generic.config index f24703c3a..3e4e3d879 100644 --- a/br-ext-chip-hisilicon/board/hi3516ev200/hi3516ev300.generic.config +++ b/br-ext-chip-hisilicon/board/hi3516ev200/hi3516ev300.generic.config @@ -892,6 +892,11 @@ CONFIG_MTD=y CONFIG_MTD_CMDLINE_PARTS=y # CONFIG_MTD_AFS_PARTS is not set CONFIG_MTD_OF_PARTS=y +CONFIG_MTD_ROOTFS_ROOT_DEV=y +CONFIG_MTD_SPLIT_FIRMWARE=y +CONFIG_MTD_SPLIT_FIRMWARE_NAME="firmware" +CONFIG_MTD_SPLIT_SQUASHFS_ROOT=y +CONFIG_MTD_SPLIT_UIMAGE_FW=y # CONFIG_MTD_AR7_PARTS is not set # diff --git a/br-ext-chip-hisilicon/configs/hi3516ev300_dev_defconfig b/br-ext-chip-hisilicon/configs/hi3516ev300_dev_defconfig index c28254d8d..36e835180 100644 --- a/br-ext-chip-hisilicon/configs/hi3516ev300_dev_defconfig +++ b/br-ext-chip-hisilicon/configs/hi3516ev300_dev_defconfig @@ -70,3 +70,4 @@ BR2_PACKAGE_RTW_HOSTAPD=y BR2_PACKAGE_UACME_OPENIPC=y BR2_PACKAGE_VTUND_OPENIPC=y BR2_PACKAGE_YAML_CLI=y +BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR2_EXTERNAL_GENERAL_PATH)/scripts/post-image-split.sh" diff --git a/br-ext-chip-hisilicon/configs/hi3516ev300_glibc_defconfig b/br-ext-chip-hisilicon/configs/hi3516ev300_glibc_defconfig index 6a556143f..c45056a37 100644 --- a/br-ext-chip-hisilicon/configs/hi3516ev300_glibc_defconfig +++ b/br-ext-chip-hisilicon/configs/hi3516ev300_glibc_defconfig @@ -67,3 +67,4 @@ BR2_PACKAGE_OPUS_OPENIPC_FIXED_POINT=y BR2_PACKAGE_UACME_OPENIPC=y BR2_PACKAGE_VTUND_OPENIPC=y BR2_PACKAGE_YAML_CLI=y +BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR2_EXTERNAL_GENERAL_PATH)/scripts/post-image-split.sh" diff --git a/br-ext-chip-hisilicon/configs/hi3516ev300_lite_defconfig b/br-ext-chip-hisilicon/configs/hi3516ev300_lite_defconfig index 1743eb612..abc20faa7 100644 --- a/br-ext-chip-hisilicon/configs/hi3516ev300_lite_defconfig +++ b/br-ext-chip-hisilicon/configs/hi3516ev300_lite_defconfig @@ -63,3 +63,4 @@ BR2_PACKAGE_OPUS_OPENIPC=y BR2_PACKAGE_OPUS_OPENIPC_FIXED_POINT=y BR2_PACKAGE_VTUND_OPENIPC=y BR2_PACKAGE_YAML_CLI=y +BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR2_EXTERNAL_GENERAL_PATH)/scripts/post-image-split.sh" diff --git a/br-ext-chip-hisilicon/configs/hi3516ev300_ultimate_defconfig b/br-ext-chip-hisilicon/configs/hi3516ev300_ultimate_defconfig index 14ff094c0..e7472bcca 100644 --- a/br-ext-chip-hisilicon/configs/hi3516ev300_ultimate_defconfig +++ b/br-ext-chip-hisilicon/configs/hi3516ev300_ultimate_defconfig @@ -86,3 +86,4 @@ BR2_PACKAGE_UACME_OPENIPC=y BR2_PACKAGE_VTUND_OPENIPC=y BR2_PACKAGE_YAML_CLI=y BR2_PACKAGE_ZEROTIER_ONE=y +BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR2_EXTERNAL_GENERAL_PATH)/scripts/post-image-split.sh" diff --git a/br-ext-chip-hisilicon/configs/hi3518ev300_lite_defconfig b/br-ext-chip-hisilicon/configs/hi3518ev300_lite_defconfig index 6e384e82c..5a6939955 100644 --- a/br-ext-chip-hisilicon/configs/hi3518ev300_lite_defconfig +++ b/br-ext-chip-hisilicon/configs/hi3518ev300_lite_defconfig @@ -67,4 +67,3 @@ BR2_PACKAGE_OPUS_OPENIPC=y BR2_PACKAGE_OPUS_OPENIPC_FIXED_POINT=y BR2_PACKAGE_YAML_CLI=y BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR2_EXTERNAL_GENERAL_PATH)/scripts/post-image-split.sh" -BR2_OPENIPC_NOR_FIXED_PACKAGE=y diff --git a/br-ext-chip-hisilicon/configs/hi3518ev300_ultimate_defconfig b/br-ext-chip-hisilicon/configs/hi3518ev300_ultimate_defconfig index a26084d23..de813070a 100644 --- a/br-ext-chip-hisilicon/configs/hi3518ev300_ultimate_defconfig +++ b/br-ext-chip-hisilicon/configs/hi3518ev300_ultimate_defconfig @@ -82,4 +82,3 @@ BR2_PACKAGE_VTUND_OPENIPC=y BR2_PACKAGE_YAML_CLI=y BR2_PACKAGE_ZEROTIER_ONE=y BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR2_EXTERNAL_GENERAL_PATH)/scripts/post-image-split.sh" -BR2_OPENIPC_NOR_FIXED_PACKAGE=y diff --git a/general/overlay/usr/sbin/sysupgrade b/general/overlay/usr/sbin/sysupgrade index fb2ed256d..c8b602cbc 100755 --- a/general/overlay/usr/sbin/sysupgrade +++ b/general/overlay/usr/sbin/sysupgrade @@ -3105,7 +3105,9 @@ default_upgrade_url() { # own archive: the plain one keeps the fixed-slot images every older # camera and installer expects. local u="https://github.com/OpenIPC/$repo/releases/download/latest/openipc.$model-$(pkg_flash)-$osr.tgz" - [ "$repo" = firmware ] && u=$(nor_split_url "$u") + # Wherever the archive lives: a board built split-only (hi3516ev300, + # hi3518ev300, hi3516cv6xx) publishes -split for dev and glibc too. + u=$(nor_split_url "$u") echo "$u" }