aspeed/smc: Replace SysBus IRQs with GPIO lines
It's cleaner and removes the curious '+ 1' required to skip the DMA IRQ line of the controller. Signed-off-by: Cédric Le Goater <clg@kaod.org> Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org> Signed-off-by: Cédric Le Goater <clg@kaod.org>
This commit is contained in:
parent
8b744a6a47
commit
b22a2d409b
@ -306,7 +306,7 @@ void aspeed_board_init_flashes(AspeedSMCState *s, const char *flashtype,
|
|||||||
qdev_realize_and_unref(dev, BUS(s->spi), &error_fatal);
|
qdev_realize_and_unref(dev, BUS(s->spi), &error_fatal);
|
||||||
|
|
||||||
cs_line = qdev_get_gpio_in_named(dev, SSI_GPIO_CS, 0);
|
cs_line = qdev_get_gpio_in_named(dev, SSI_GPIO_CS, 0);
|
||||||
sysbus_connect_irq(SYS_BUS_DEVICE(s), i + 1, cs_line);
|
qdev_connect_gpio_out_named(DEVICE(s), "cs", i, cs_line);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1134,10 +1134,7 @@ static void aspeed_smc_realize(DeviceState *dev, Error **errp)
|
|||||||
|
|
||||||
/* Setup cs_lines for peripherals */
|
/* Setup cs_lines for peripherals */
|
||||||
s->cs_lines = g_new0(qemu_irq, asc->cs_num_max);
|
s->cs_lines = g_new0(qemu_irq, asc->cs_num_max);
|
||||||
|
qdev_init_gpio_out_named(DEVICE(s), s->cs_lines, "cs", asc->cs_num_max);
|
||||||
for (i = 0; i < asc->cs_num_max; ++i) {
|
|
||||||
sysbus_init_irq(sbd, &s->cs_lines[i]);
|
|
||||||
}
|
|
||||||
|
|
||||||
/* The memory region for the controller registers */
|
/* The memory region for the controller registers */
|
||||||
memory_region_init_io(&s->mmio, OBJECT(s), &aspeed_smc_ops, s,
|
memory_region_init_io(&s->mmio, OBJECT(s), &aspeed_smc_ops, s,
|
||||||
|
Loading…
Reference in New Issue
Block a user