On Wed, Jan 10, 2024 at 03:39:58PM +0100, Ahmad Fatoum wrote: > The barebox bootm command is often not called directly, but via > bootloader spec or FIT image boot handlers. For debugging, it can be > useful to reuse those boot handlers, but replace single artifacts, e.g. > using the barebox device tree instead of the bootloader-spec provided > device tree. > > To make this easier, have boot -v -d (verbose + dry run) write a boot > script that reproduces the cancelled boot to /env/boot/cancelled. I like the idea very much. I also had this problem more than once. I think an explicit option rather than "-v -d" would be better. With this there would be a natural way to document this behaviour in the boot help output. /env/boot/cancelled would be saved in the environment with a saveenv which is likely not desirable. Maybe better put it somewhere in /tmp/? > + dprintf(fd, "global.bootm.verify=%s\n", verify); > + > + dprintf(fd, "\n"); > + > + if (data->os_address != UIMAGE_SOME_ADDRESS) > + dprintf(fd, "global.bootm.image.loadaddr=0x%08lx\n", data->os_address); > + if (data->os_file) > + dprintf(fd, "global.bootm.image='%s'\n", data->os_file); > + if (data->oftree_file) > + dprintf(fd, "global.bootm.oftree='%s'\n", data->oftree_file); > +#ifdef CONFIG_BOOTM_INITRD > + if (data->initrd_file) > + dprintf(fd, "global.bootm.initrd='%s'\n", data->initrd_file); > + > + if (data->initrd_address != UIMAGE_INVALID_ADDRESS) > + dprintf(fd, "global.bootm.initrd.loadaddr=0x%08lx\n", data->initrd_address); > +#endif > + if (data->tee_file) > + dprintf(fd, "global.bootm.tee_file='%s'\n", data->tee_file); > + > + dprintf(fd, "\n"); > + > + bootargs = linux_bootargs_get(); > + if (bootargs) > + dprintf(fd, "global linux.bootargs.dyn.concatenated='%s'\n", bootargs); This will contain all of linux.bootargs.* which are then added again when we actually boot the script, so we end up having many bootargs twice. This is not very nice, I don't know though how/if we can improve that. Sascha -- Pengutronix e.K. | | Steuerwalder Str. 21 | http://www.pengutronix.de/ | 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |