示例#1
0
文件: sparc32_dma.c 项目: 8tab/qemu
static void dma_reset(DeviceState *d)
{
    DMAState *s = SPARC32_DMA(d);

    memset(s->dmaregs, 0, DMA_SIZE);
    s->dmaregs[0] = DMA_VER;
}
示例#2
0
文件: sparc32_dma.c 项目: 8tab/qemu
static void sparc32_dma_realize(DeviceState *dev, Error **errp)
{
    DMAState *s = SPARC32_DMA(dev);
    int reg_size;

    reg_size = s->is_ledma ? DMA_ETH_SIZE : DMA_SIZE;
    memory_region_init_io(&s->iomem, OBJECT(dev), &dma_mem_ops, s,
                          "dma", reg_size);
}
示例#3
0
文件: sparc32_dma.c 项目: 8tab/qemu
static void sparc32_dma_init(Object *obj)
{
    DeviceState *dev = DEVICE(obj);
    DMAState *s = SPARC32_DMA(obj);
    SysBusDevice *sbd = SYS_BUS_DEVICE(obj);

    sysbus_init_irq(sbd, &s->irq);

    sysbus_init_mmio(sbd, &s->iomem);

    qdev_init_gpio_in(dev, dma_set_irq, 1);
    qdev_init_gpio_out(dev, s->gpio, 2);
}
示例#4
0
static int sparc32_dma_init1(SysBusDevice *sbd)
{
    DeviceState *dev = DEVICE(sbd);
    DMAState *s = SPARC32_DMA(dev);
    int reg_size;

    sysbus_init_irq(sbd, &s->irq);

    reg_size = s->is_ledma ? DMA_ETH_SIZE : DMA_SIZE;
    memory_region_init_io(&s->iomem, OBJECT(s), &dma_mem_ops, s,
                          "dma", reg_size);
    sysbus_init_mmio(sbd, &s->iomem);

    qdev_init_gpio_in(dev, dma_set_irq, 1);
    qdev_init_gpio_out(dev, s->gpio, 2);

    return 0;
}