On Fri, Aug 5, 2022 at 8:08 PM Daniel Henrique Barboza <danielhb...@gmail.com> wrote: > > This will enable support for 'dumpdtb' and 'info fdt' HMP commands for > the spike machine. > > Cc: Palmer Dabbelt <pal...@dabbelt.com> > Cc: Alistair Francis <alistair.fran...@wdc.com> > Cc: Bin Meng <bin.m...@windriver.com> > Signed-off-by: Daniel Henrique Barboza <danielhb...@gmail.com>
Reviewed-by: Alistair Francis <alistair.fran...@wdc.com> Alistair > --- > hw/riscv/spike.c | 11 +++++++++++ > 1 file changed, 11 insertions(+) > > diff --git a/hw/riscv/spike.c b/hw/riscv/spike.c > index e41b6aa9f0..2909f7b2a1 100644 > --- a/hw/riscv/spike.c > +++ b/hw/riscv/spike.c > @@ -40,6 +40,8 @@ > #include "sysemu/device_tree.h" > #include "sysemu/sysemu.h" > > +#include <libfdt.h> > + > static const MemMapEntry spike_memmap[] = { > [SPIKE_MROM] = { 0x1000, 0xf000 }, > [SPIKE_HTIF] = { 0x1000000, 0x1000 }, > @@ -304,6 +306,15 @@ static void spike_board_init(MachineState *machine) > /* Compute the fdt load address in dram */ > fdt_load_addr = riscv_load_fdt(memmap[SPIKE_DRAM].base, > machine->ram_size, s->fdt); > + > + /* > + * Update the machine->fdt pointer to enable support for > + * 'dumpdtb'and 'info fdt' commands. Use fdt_pack() to > + * shrink the blob size we're going to store. > + */ > + fdt_pack(s->fdt); > + machine->fdt = s->fdt; > + > /* load the reset vector */ > riscv_setup_rom_reset_vec(machine, &s->soc[0], memmap[SPIKE_DRAM].base, > memmap[SPIKE_MROM].base, > -- > 2.36.1 > >