Commit 562183de2ecdbe6959c00da3e9ea3d608937fc56
1 parent
074f2fff
ETRAX: Correct PIC creation for the bare FS board.
Signed-off-by: Edgar E. Iglesias <edgar.iglesias@gmail.com>
Showing
1 changed file
with
7 additions
and
2 deletions
hw/etraxfs.c
| ... | ... | @@ -49,6 +49,7 @@ void bareetraxfs_init (ram_addr_t ram_size, |
| 49 | 49 | const char *initrd_filename, const char *cpu_model) |
| 50 | 50 | { |
| 51 | 51 | DeviceState *dev; |
| 52 | + SysBusDevice *s; | |
| 52 | 53 | CPUState *env; |
| 53 | 54 | qemu_irq irq[30], nmi[2], *cpu_irq; |
| 54 | 55 | void *etraxfs_dmac; |
| ... | ... | @@ -85,10 +86,14 @@ void bareetraxfs_init (ram_addr_t ram_size, |
| 85 | 86 | 1, 2, 0x0000, 0x0000, 0x0000, 0x0000, |
| 86 | 87 | 0x555, 0x2aa); |
| 87 | 88 | cpu_irq = cris_pic_init_cpu(env); |
| 88 | - dev = sysbus_create_varargs("etraxfs,pic", 0x3001c000, | |
| 89 | - cpu_irq[0], cpu_irq[1], NULL); | |
| 89 | + dev = qdev_create(NULL, "etraxfs,pic"); | |
| 90 | 90 | /* FIXME: Is there a proper way to signal vectors to the CPU core? */ |
| 91 | 91 | qdev_set_prop_ptr(dev, "interrupt_vector", &env->interrupt_vector); |
| 92 | + qdev_init(dev); | |
| 93 | + s = sysbus_from_qdev(dev); | |
| 94 | + sysbus_mmio_map(s, 0, 0x3001c000); | |
| 95 | + sysbus_connect_irq(s, 0, cpu_irq[0]); | |
| 96 | + sysbus_connect_irq(s, 1, cpu_irq[1]); | |
| 92 | 97 | for (i = 0; i < 30; i++) { |
| 93 | 98 | irq[i] = qdev_get_gpio_in(dev, i); |
| 94 | 99 | } | ... | ... |