For context, I've been adding some patches to u-boot for a project, and I already have the kernel image, device tree blob, and initrd image loaded into u-boot memory.
I've had luck in the past calling command line functions (like do_mem_cp) through their respective C functions, but I am not having luck with the bootm command. I am currently doing:
char *argv[4] = {"bootm", "a5001000", "b0000000", "a9000000"};
do_bootm(NULL, 0, 4, argv);
As I stated, this worked in the past for other commands, but during this call I'm getting the error "Synchronous Abort" handler, esr 0x96000004. Does anyone know of a better way to call bootm (or a similar command) from C?
Edit: This is for the Jetson TX2i