qemu/hw/lm32/lm32.h
<<
>>
Prefs
   1#ifndef HW_LM32_H
   2#define HW_LM32_H
   3
   4#include "hw/char/lm32_juart.h"
   5
   6static inline DeviceState *lm32_pic_init(qemu_irq cpu_irq)
   7{
   8    DeviceState *dev;
   9    SysBusDevice *d;
  10
  11    dev = qdev_create(NULL, "lm32-pic");
  12    qdev_init_nofail(dev);
  13    d = SYS_BUS_DEVICE(dev);
  14    sysbus_connect_irq(d, 0, cpu_irq);
  15
  16    return dev;
  17}
  18
  19static inline DeviceState *lm32_juart_init(Chardev *chr)
  20{
  21    DeviceState *dev;
  22
  23    dev = qdev_create(NULL, TYPE_LM32_JUART);
  24    qdev_prop_set_chr(dev, "chardev", chr);
  25    qdev_init_nofail(dev);
  26
  27    return dev;
  28}
  29
  30static inline DeviceState *lm32_uart_create(hwaddr addr,
  31                                            qemu_irq irq,
  32                                            Chardev *chr)
  33{
  34    DeviceState *dev;
  35    SysBusDevice *s;
  36
  37    dev = qdev_create(NULL, "lm32-uart");
  38    s = SYS_BUS_DEVICE(dev);
  39    qdev_prop_set_chr(dev, "chardev", chr);
  40    qdev_init_nofail(dev);
  41    sysbus_mmio_map(s, 0, addr);
  42    sysbus_connect_irq(s, 0, irq);
  43    return dev;
  44}
  45
  46#endif
  47