On Wed, 11 Oct 2023 at 18:56, Sean Anderson <[email protected]> wrote: > > Add a test for loading U-Boot over TFTP. As with other sandbox net > routines, we need to initialize our packets manually since things like > net_set_ether and net_set_udp_header always use "our" addresses. We use > BOOTP instead of DHCP, since DHCP has a tag/length-based format which is > harder to parse. Our TFTP implementation doesn't define as many constants > as I'd like, so I create some here. Note that the TFTP block size is > one-based, but offsets are zero-based. > > In order to avoid address errors, we need to set up/define some additional > address information settings. dram_init_banksize would be a good candidate > for settig up bi_dram, but it gets called too late in board_init_r. > > Signed-off-by: Sean Anderson <[email protected]> > --- > > arch/sandbox/cpu/spl.c | 3 + > arch/sandbox/include/asm/spl.h | 1 + > configs/sandbox_noinst_defconfig | 6 +- > test/image/Kconfig | 9 ++ > test/image/Makefile | 1 + > test/image/spl_load_net.c | 252 +++++++++++++++++++++++++++++++ > 6 files changed, 271 insertions(+), 1 deletion(-) > create mode 100644 test/image/spl_load_net.c >
Reviewed-by: Simon Glass <[email protected]> > diff --git a/arch/sandbox/cpu/spl.c b/arch/sandbox/cpu/spl.c > index 09e3d10d6a5..8153df18d68 100644 > --- a/arch/sandbox/cpu/spl.c > +++ b/arch/sandbox/cpu/spl.c > @@ -126,6 +126,9 @@ void spl_board_init(void) > { > struct sandbox_state *state = state_get_current(); > > + gd->bd->bi_dram[0].start = gd->ram_base; > + gd->bd->bi_dram[0].size = get_effective_memsize(); These could use a common as to why they are needed here. [..] Regards, Simon

