Hi,
The following is my sw-description file, which is very similar to the one that exists on the terminal-server branch of the meta-swupdate-boards repo (I just changed filename to the final tarball name):
software =
{
version = "0.1.0";
raspberrypi3 = {
hardware-compatibility: [ "1.0"];
stable : {
copy1 : {
images: (
{
filename = "terminal-server-image-raspberrypi3.ext4.gz";
type = "raw";
compressed = true;
device = "/dev/mmcblk0p2";
}
);
uboot: (
{
name = "rpipart";
value = "2";
}
);
};
copy2 : {
images: (
{
filename = "terminal-server-image-raspberrypi3.ext4.gz";
type = "raw";
compressed = true;
device = "/dev/mmcblk0p3";
}
);
uboot: (
{
name = "rpipart";
value = "3";
}
);
};
};
}
}
When running the resulting .swu file through swupdate's checker, I get the following error:
[ERROR] : SWUPDATE failed [0] ERROR /home/mbilloo/bowery/yocto/build/tmp/work/raspberrypi3-poky-linux-gnueabi/swupdate/2022.05-r0/git/parser/parser.c : parser : 966 : Found nothing to install
[DEBUG] : SWUPDATE running : [parse_json] : Parsing config file /tmp/sw-description
[ERROR] : SWUPDATE failed [0] ERROR /home/mbilloo/bowery/yocto/build/tmp/work/raspberrypi3-poky-linux-gnueabi/swupdate/2022.05-r0/git/parser/parser.c : parse_json : 1057 : JSON File corrupted
[ERROR] : SWUPDATE failed [0] ERROR /home/mbilloo/bowery/yocto/build/tmp/work/raspberrypi3-poky-linux-gnueabi/swupdate/2022.05-r0/git/core/parser.c : parse : 164 : no parser available to parse sw-description!
[ERROR] : SWUPDATE failed [0] ERROR /home/mbilloo/bowery/yocto/build/tmp/work/raspberrypi3-poky-linux-gnueabi/swupdate/2022.05-r0/git/core/stream_interface.c : extract_files : 165 : Compatible SW not found
I added some additional debugging in swupdate and discovered that it's failing here (setting is NULL):
setting = find_node_and_path(p, cfg, "images", swcfg, nodes);
INFO("MAB, setting = %p", setting);
if (!setting)
return 0;
Can anyone help me to understand what is incorrect with my sw-description file?
Thanks