On 24 July 2012 07:09, Peter Crosthwaite <peter.crosthwa...@petalogix.com> wrote: >> The Stellaris lm3s6965evb Machine model is broken: >> qemu-system-arm: >> /home/peterc/Petalogix/Internal/plgx_src/qemu/hw/qdev.c:309: >> qdev_get_gpio_in: Assertion `n >= 0 && n < dev->num_gpio_in' failed.
>> Bisection points at this commit: >> >> commit 1e8cae4dfea2bcc91d3820dcf4f9284e7b0abb28 >> Author: Peter Maydell <peter.mayd...@linaro.org> >> Date: Wed May 2 16:49:42 2012 +0000 >> >> hw/armv7m_nvic: Make the NVIC a freestanding class >> >> Rearrange the GIC and NVIC so both are straightforward >> subclasses of a common class, rather than having the NVIC >> source file textually include arm_gic.c. >> >> Signed-off-by: Peter Maydell <peter.mayd...@linaro.org> Yes. I think this was OK in review but got committed at about the same time as a qdev reworking that meant that every class in the hierarchy could have qdev properties rather than the subclass always winning. There's a 'num-irq' property for both armv7m-nvic and its parent class arm-gic-common and I think they're clashing so we get the default value specified by the parent class rather than the subclass. I'm going to try a fix suggested by Paolo of deleting the subclass property and instead adding an instance init fn which fiddles the superclass's default value. -- PMM