Message ID | 20190617160136.29930-1-philmd@redhat.com |
---|---|
State | New |
Headers | show |
Series | hw/arm/msf2-som: Exit when the cpu is not the expected one | expand |
On Mon, Jun 17, 2019 at 9:19 AM Philippe Mathieu-Daudé <philmd@redhat.com> wrote: > > This machine correctly defines its default_cpu_type to cortex-m3 > and report an error if the user requested another cpu_type, > however it does not exit, and this can confuse users trying > to use another core: > > $ qemu-system-arm -M emcraft-sf2 -cpu cortex-m4 -kernel test-m4.elf > qemu-system-arm: This board can only be used with CPU cortex-m3-arm-cpu > [output related to M3 core ...] > > The CPU is indeed a M3 core: > > (qemu) info qom-tree > /machine (emcraft-sf2-machine) > /unattached (container) > /device[0] (msf2-soc) > /armv7m (armv7m) > /cpu (cortex-m3-arm-cpu) > > Add the missing exit() call to return to the shell. > > Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com> Reviewed-by: Alistair Francis <alistair.francis@wdc.com> Alistair > --- > hw/arm/msf2-som.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/hw/arm/msf2-som.c b/hw/arm/msf2-som.c > index 8c550a8bdd..2c9984bb3b 100644 > --- a/hw/arm/msf2-som.c > +++ b/hw/arm/msf2-som.c > @@ -53,6 +53,7 @@ static void emcraft_sf2_s2s010_init(MachineState *machine) > if (strcmp(machine->cpu_type, mc->default_cpu_type) != 0) { > error_report("This board can only be used with CPU %s", > mc->default_cpu_type); > + exit(1); > } > > memory_region_init_ram(ddr, NULL, "ddr-ram", DDR_SIZE, > -- > 2.20.1 > >
On Mon, Jun 17, 2019 at 06:01:36PM +0200, Philippe Mathieu-Daudé wrote: > This machine correctly defines its default_cpu_type to cortex-m3 > and report an error if the user requested another cpu_type, > however it does not exit, and this can confuse users trying > to use another core: > > $ qemu-system-arm -M emcraft-sf2 -cpu cortex-m4 -kernel test-m4.elf > qemu-system-arm: This board can only be used with CPU cortex-m3-arm-cpu > [output related to M3 core ...] > > The CPU is indeed a M3 core: > > (qemu) info qom-tree > /machine (emcraft-sf2-machine) > /unattached (container) > /device[0] (msf2-soc) > /armv7m (armv7m) > /cpu (cortex-m3-arm-cpu) > > Add the missing exit() call to return to the shell. > > Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com> Reviewed-by: Eduardo Habkost <ehabkost@redhat.com>
On Mon, 17 Jun 2019 at 17:01, Philippe Mathieu-Daudé <philmd@redhat.com> wrote: > > This machine correctly defines its default_cpu_type to cortex-m3 > and report an error if the user requested another cpu_type, > however it does not exit, and this can confuse users trying > to use another core: > > $ qemu-system-arm -M emcraft-sf2 -cpu cortex-m4 -kernel test-m4.elf > qemu-system-arm: This board can only be used with CPU cortex-m3-arm-cpu > [output related to M3 core ...] > > The CPU is indeed a M3 core: > > (qemu) info qom-tree > /machine (emcraft-sf2-machine) > /unattached (container) > /device[0] (msf2-soc) > /armv7m (armv7m) > /cpu (cortex-m3-arm-cpu) > > Add the missing exit() call to return to the shell. > > Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com> > --- Applied to target-arm.next, thanks. -- PMM
diff --git a/hw/arm/msf2-som.c b/hw/arm/msf2-som.c index 8c550a8bdd..2c9984bb3b 100644 --- a/hw/arm/msf2-som.c +++ b/hw/arm/msf2-som.c @@ -53,6 +53,7 @@ static void emcraft_sf2_s2s010_init(MachineState *machine) if (strcmp(machine->cpu_type, mc->default_cpu_type) != 0) { error_report("This board can only be used with CPU %s", mc->default_cpu_type); + exit(1); } memory_region_init_ram(ddr, NULL, "ddr-ram", DDR_SIZE,
This machine correctly defines its default_cpu_type to cortex-m3 and report an error if the user requested another cpu_type, however it does not exit, and this can confuse users trying to use another core: $ qemu-system-arm -M emcraft-sf2 -cpu cortex-m4 -kernel test-m4.elf qemu-system-arm: This board can only be used with CPU cortex-m3-arm-cpu [output related to M3 core ...] The CPU is indeed a M3 core: (qemu) info qom-tree /machine (emcraft-sf2-machine) /unattached (container) /device[0] (msf2-soc) /armv7m (armv7m) /cpu (cortex-m3-arm-cpu) Add the missing exit() call to return to the shell. Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com> --- hw/arm/msf2-som.c | 1 + 1 file changed, 1 insertion(+)