software = { version = "0.1.0"; description = "Firmware update for Tina Project"; stable = { /* now in systemA, we need to upgrade systemB(bootB, rootfsB) */ now_A_next_B = { images: ( { filename = "kernel.rdiff.delta"; type = "rdiff_image"; sha256 = "@kernel.rdiff.delta"; device = "/dev/by-name/bootB"; properties: { rdiffbase = ["/dev/by-name/bootA"]; }; }, { filename = "rootfs.rdiff.delta"; type = "rdiff_image"; sha256 = "@rootfs.rdiff.delta" device = "/dev/by-name/rootfsB"; properties: { rdiffbase = ["/dev/by-name/rootfsA"]; }; }, { filename = "uboot"; type = "awuboot"; sha256 = "@uboot"; }, { filename = "boot0"; type = "awboot0"; sha256 = "@boot0"; } ); scripts: ( { device = "/dev/by-name/bootB"; type = "readback"; properties: { sha256 = "@kernel"; size = "@kernel"; } }, { device = "/dev/by-name/rootfsB"; type = "readback"; properties: { sha256 = "@rootfs"; size = "@rootfs"; } } ); bootenv: ( { name = "swu_mode"; value = ""; }, { name = "boot_partition"; value = "bootB"; }, { name = "root_partition"; value = "rootfsB"; }, { name = "systemAB_next"; value = "B"; }, { name = "swu_next"; value = "reboot"; } ); }; /* now in systemB, we need to upgrade systemA(bootA, rootfsA) */ now_B_next_A = { images: ( { filename = "kernel.rdiff.delta"; sha256 = "@kernel.rdiff.delta"; type = "rdiff_image"; device = "/dev/by-name/bootA"; properties: { rdiffbase = ["/dev/by-name/bootB"]; }; }, { filename = "rootfs.rdiff.delta"; sha256 = "@rootfs.rdiff.delta"; type = "rdiff_image"; device = "/dev/by-name/rootfsA"; properties: { rdiffbase = ["/dev/by-name/rootfsB"]; }; }, { filename = "uboot"; type = "awuboot"; sha256 = "@uboot"; }, { filename = "boot0"; type = "awboot0"; sha256 = "@boot0"; } ); scripts: ( { device = "/dev/by-name/bootB"; type = "readback"; properties: { sha256 = "@kernel"; size = "@kernel"; } }, { device = "/dev/by-name/rootfsB"; type = "readback"; properties: { sha256 = "@rootfs"; size = "@rootfs"; } } ); bootenv: ( { name = "swu_mode"; value = ""; }, { name = "boot_partition"; value = "bootA"; }, { name = "root_partition"; value = "rootfsA"; }, { name = "systemAB_next"; value = "A"; }, { name = "swu_next"; value = "reboot"; } ); }; }; /* when not call with -e xxx,xxx just clean */ bootenv: ( { name = "swu_param"; value = ""; }, { name = "swu_software"; value = ""; }, { name = "swu_mode"; value = ""; }, { name = "swu_version"; value = ""; } ); }