Example #1
0
int imx8image_copy_image(int outfd, struct image_tool_params *mparams)
{
	image_t *img_sp = param_stack;

	/*
	 * SECO FW is a container image, this is to calculate the
	 * 2nd container offset.
	 */
	fprintf(stdout, "parsing %s\n", mparams->imagename);
	parse_cfg_file(img_sp, mparams->imagename);

	if (sector_size == 0) {
		fprintf(stderr, "Wrong sector size\n");
		exit(EXIT_FAILURE);
	}

	fprintf(stdout, "CONTAINER Sector size:\t%08x\n", sector_size);
	fprintf(stdout, "CONTAINER FUSE VERSION:\t0x%02x\n", fuse_version);
	fprintf(stdout, "CONTAINER SW VERSION:\t0x%04x\n", sw_version);

	build_container(soc, sector_size, emmc_fastboot,
			img_sp, false, fuse_version, sw_version, outfd);

	return 0;
}
Example #2
0
int run(void* arg)
{
    char **argv = (char**) arg;
    const std::string command = (const std::string) argv[1];
    const std::vector<std::string> args = {command};
    
    Container container = build_container();
    try 
    {
        container.run_command(command, args);
    }
    catch (const std::exception& exc)
    {
        std::cerr << "Exception caught " << exc.what() << "\n";
        return 1;
    }
    
    return 0;
}