Hi Paolo, On 3/19/19 3:40 PM, Paolo Bonzini wrote: > Do not create a TCX if "-vga none" was passed on the command line. > Remove some dead code along the way to avoid big reindentation.
Can you add: This fixes when configuring with --without-default-devices: $ sparc-softmmu/qemu-system-sparc qemu-system-sparc: Unknown device 'SUNW,tcx' for default sysbus Aborted (core dumped) (gdb) bt #1 0x00007fc78d17d895 in __GI_abort () at abort.c:79 #2 0x0000560beaf637f3 in qdev_create (bus=bus@entry=0x0, name=name@entry=0x560beb1be36b "SUNW,tcx") at hw/core/qdev.c:131 #3 0x0000560beaf1392d in tcx_init (vram_size=1048576, width=1024, height=768, depth=8, irq=0x560bed1a0230, addr=1342177280) at hw/sparc/sun4m.c:477 #4 0x0000560beaf1392d in sun4m_hw_init (hwdef=0x560beb1be780 <sun4m_hwdefs>, machine=0x560becf65f00) at hw/sparc/sun4m.c:943 #5 0x0000560beaf6b15b in machine_run_board_init (machine=0x560becf65f00) at hw/core/machine.c:1030 #6 0x0000560beae86692 in main (argc=<optimized out>, argv=<optimized out>, envp=<optimized out>) at vl.c:4463 > Signed-off-by: Paolo Bonzini <pbonz...@redhat.com> Reviewed-by: Philippe Mathieu-Daudé <phi...@redhat.com> Tested-by: Philippe Mathieu-Daudé <phi...@redhat.com> > --- > hw/sparc/sun4m.c | 6 ++---- > 1 file changed, 2 insertions(+), 4 deletions(-) > > diff --git a/hw/sparc/sun4m.c b/hw/sparc/sun4m.c > index ca1e3825d5..07d126aea8 100644 > --- a/hw/sparc/sun4m.c > +++ b/hw/sparc/sun4m.c > @@ -850,7 +850,6 @@ static void sun4m_hw_init(const struct sun4m_hwdef *hwdef, > uint32_t initrd_size; > DriveInfo *fd[MAX_FD]; > FWCfgState *fw_cfg; > - unsigned int num_vsimms; > DeviceState *dev; > SysBusDevice *s; > > @@ -909,8 +908,7 @@ static void sun4m_hw_init(const struct sun4m_hwdef *hwdef, > error_report("Unsupported depth: %d", graphic_depth); > exit (1); > } > - num_vsimms = 0; > - if (num_vsimms == 0) { > + if (vga_interface_type != VGA_NONE) { > if (vga_interface_type == VGA_CG3) { > if (graphic_depth != 8) { > error_report("Unsupported depth: %d", graphic_depth); > @@ -945,7 +943,7 @@ static void sun4m_hw_init(const struct sun4m_hwdef *hwdef, > } > } > > - for (i = num_vsimms; i < MAX_VSIMMS; i++) { > + for (i = 0; i < MAX_VSIMMS; i++) { > /* vsimm registers probed by OBP */ > if (hwdef->vsimm[i].reg_base) { > empty_slot_init(hwdef->vsimm[i].reg_base, 0x2000); >