diff --git a/hw/pc.h b/hw/pc.h index 50d9943dc3..09f63f044a 100644 --- a/hw/pc.h +++ b/hw/pc.h @@ -17,7 +17,19 @@ SerialState *serial_mm_init (target_phys_addr_t base, int it_shift, qemu_irq irq, int baudbase, CharDriverState *chr, int ioregister, int be); -SerialState *serial_isa_init(int index, CharDriverState *chr); +static inline bool serial_isa_init(int index, CharDriverState *chr) +{ + ISADevice *dev; + + dev = isa_create("isa-serial"); + qdev_prop_set_uint32(&dev->qdev, "index", index); + qdev_prop_set_chr(&dev->qdev, "chardev", chr); + if (qdev_init(&dev->qdev) < 0) { + return false; + } + return true; +} + void serial_set_frequency(SerialState *s, uint32_t frequency); /* parallel.c */ diff --git a/hw/serial.c b/hw/serial.c index 2c4af61a2b..879237f1ec 100644 --- a/hw/serial.c +++ b/hw/serial.c @@ -782,18 +782,6 @@ static int serial_isa_initfn(ISADevice *dev) return 0; } -SerialState *serial_isa_init(int index, CharDriverState *chr) -{ - ISADevice *dev; - - dev = isa_create("isa-serial"); - qdev_prop_set_uint32(&dev->qdev, "index", index); - qdev_prop_set_chr(&dev->qdev, "chardev", chr); - if (qdev_init(&dev->qdev) < 0) - return NULL; - return &DO_UPCAST(ISASerialState, dev, dev)->state; -} - static const VMStateDescription vmstate_isa_serial = { .name = "serial", .version_id = 3,