On Fri, 22 Dec 2023 at 06:19, Ilias Apalodimas <ilias.apalodi...@linaro.org> wrote:
> > #endif > > > > +/* Boot parameters saved from start.S */ > > +extern unsigned long saved_args[]; > > + > > int board_init(void) > > { > > return 0; > > @@ -144,6 +148,35 @@ void *board_fdt_blob_setup(int *err) > > return (void *)CFG_SYS_SDRAM_BASE; > > } > > > > +int board_bloblist_from_boot_arg(unsigned long addr, unsigned long size) > > +{ > > + int ret = -ENOENT; > > + unsigned long reg_fdt; > > + unsigned long reg_zero; > > + > > + if (!IS_ENABLED(CONFIG_OF_BOARD) || !IS_ENABLED(CONFIG_BLOBLIST)) > > + return -ENOENT; > > + > > + ret = bloblist_check(saved_args[3], size); > > + if (ret) > > + return ret; > > + > > + if (IS_ENABLED(CONFIG_ARM64)) { > > + reg_fdt = saved_args[0]; > > + reg_zero = saved_args[2]; > > + } else { > > + reg_fdt = saved_args[2]; > > + reg_zero = saved_args[0]; > > I think it's better if we fix up the order in the low-level asm code. > Store the variables in the 'correct' order there and get rid of this > if > Yes I agree. I can swap the order for aarch32. Thanks and regards, Raymond