summary refs log tree commit diff stats
path: root/hw/lm32/lm32.h
diff options
context:
space:
mode:
Diffstat (limited to 'hw/lm32/lm32.h')
-rw-r--r--hw/lm32/lm32.h16
1 files changed, 16 insertions, 0 deletions
diff --git a/hw/lm32/lm32.h b/hw/lm32/lm32.h
index a993f0046c..e338bfeae5 100644
--- a/hw/lm32/lm32.h
+++ b/hw/lm32/lm32.h
@@ -27,4 +27,20 @@ static inline DeviceState *lm32_juart_init(CharDriverState *chr)
     return dev;
 }
 
+static inline DeviceState *lm32_uart_create(hwaddr addr,
+                                            qemu_irq irq,
+                                            CharDriverState *chr)
+{
+    DeviceState *dev;
+    SysBusDevice *s;
+
+    dev = qdev_create(NULL, "lm32-uart");
+    s = SYS_BUS_DEVICE(dev);
+    qdev_prop_set_chr(dev, "chardev", chr);
+    qdev_init_nofail(dev);
+    sysbus_mmio_map(s, 0, addr);
+    sysbus_connect_irq(s, 0, irq);
+    return dev;
+}
+
 #endif