From: Philippe Mathieu-Daudé <phi...@redhat.com> The SM501 is a Mobile Multimedia Companion Chip with 2 UARTs. This model only implements the first UART. Being part of the chipset, the UART block is always mapped in memory, regardless of whether we provide a chardev backend.
Since commit 12051d82f, qemu_chr_fe_init() accepts a NULL chardev. Let's remove the chardev check and always map the UART in the chipset memory. Signed-off-by: Philippe Mathieu-Daudé <phi...@redhat.com> Message-Id: <20191122133623.13004-1-phi...@redhat.com> Reviewed-by: Peter Maydell <peter.mayd...@linaro.org> --- hw/display/sm501.c | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/hw/display/sm501.c b/hw/display/sm501.c index 1f33c87e65..79bd7bc2d1 100644 --- a/hw/display/sm501.c +++ b/hw/display/sm501.c @@ -1958,11 +1958,9 @@ static void sm501_realize_sysbus(DeviceState *dev, Error **errp) sysbus_pass_irq(sbd, SYS_BUS_DEVICE(usb_dev)); /* bridge to serial emulation module */ - if (s->chr_state) { - serial_mm_init(&s->state.mmio_region, SM501_UART0, 2, - NULL, /* TODO : chain irq to IRL */ - 115200, s->chr_state, DEVICE_LITTLE_ENDIAN); - } + serial_mm_init(&s->state.mmio_region, SM501_UART0, 2, + NULL, /* TODO : chain irq to IRL */ + 115200, s->chr_state, DEVICE_LITTLE_ENDIAN); } static Property sm501_sysbus_properties[] = { -- 2.24.0.308.g228f53135a