On Tue, 19 Nov 2013 20:01:28 +0000 Peter Maydell <peter.mayd...@linaro.org> wrote:
> I find myself with a use case where I would like to set > a CPU object property from the board model init function > (specifically, I'd like the board model to be able to say > "this CPU will boot via PSCI so if you're KVM then start > it appropriately"). > > I could just reach in and fiddle with the ARMCPU field > the way hw/arm/highback.c does with reset_cbar (and in fact > that's what I'm likely to do for the moment). However it > seems like it would be nicer for it to be an official > QOM property. This is alas not currently possible because > cpu_arm_init() does both 'init' and 'realize', and once > you've called it it's too late to set properties. It's possible to use global properties even with cpu_arm_init(), if it's registered for CPU type before cpu_arm_init() is called. Than that property would be applied to every new CPU instance by device_post_init() hook on before object_new() returns. > > Andreas -- did you have any thoughts/plans/code in this area? > Splitting the realize part out of cpu_arm_init(), or > providing a cpu_arm_init_dont_realize() [ugh], would be > easy to code but is it going in the right direction? > > thanks > -- PMM > -- Regards, Igor