mirror of https://github.com/xemu-project/xemu.git
serial: refactor device creation
Turn serial_init into an inline function. Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
This commit is contained in:
parent
cd1b8a8b0d
commit
e22cf21efd
14
hw/pc.h
14
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 */
|
||||
|
|
12
hw/serial.c
12
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,
|
||||
|
|
Loading…
Reference in New Issue