Revision ddde095c hw/etraxfs_pic.c

b/hw/etraxfs_pic.c
39 39
struct etrax_pic
40 40
{
41 41
    SysBusDevice busdev;
42
    uint32_t *interrupt_vector;
42
    void *interrupt_vector;
43 43
    qemu_irq parent_irq;
44 44
    qemu_irq parent_nmi;
45 45
    uint32_t regs[R_MAX];
......
71 71
    }
72 72

  
73 73
    if (fs->interrupt_vector) {
74
        *fs->interrupt_vector = vector;
74
        /* hack alert: ptr property */
75
        *(uint32_t*)(fs->interrupt_vector) = vector;
75 76
    }
76 77
    qemu_set_irq(fs->parent_irq, !!vector);
77 78
}
......
153 154
    .qdev.name  = "etraxfs,pic",
154 155
    .qdev.size  = sizeof(struct etrax_pic),
155 156
    .qdev.props = (Property[]) {
156
        {
157
            .name   = "interrupt_vector",
158
            .info   = &qdev_prop_ptr,
159
            .offset = offsetof(struct etrax_pic, interrupt_vector),
160
        },
161
        {/* end of list */}
157
        DEFINE_PROP_PTR("interrupt_vector", struct etrax_pic, interrupt_vector),
158
        DEFINE_PROP_END_OF_LIST(),
162 159
    }
163 160
};
164 161

  

Also available in: Unified diff