On 01/07/2019 13:34, Philippe Mathieu-Daudé wrote:

> Avoid another QOM orphean, link it back to its parent.
> 
> Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
> ---
>  hw/misc/macio/macio.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/hw/misc/macio/macio.c b/hw/misc/macio/macio.c
> index 82492096f8..e02882be28 100644
> --- a/hw/misc/macio/macio.c
> +++ b/hw/misc/macio/macio.c
> @@ -243,7 +243,8 @@ static void macio_oldworld_init(Object *obj)
>  
>      macio_init_child_obj(s, "cuda", &s->cuda, sizeof(s->cuda), TYPE_CUDA);
>  
> -    object_initialize(&os->nvram, sizeof(os->nvram), TYPE_MACIO_NVRAM);
> +    object_initialize_child(s, "nvram",  &os->nvram, sizeof(os->nvram),
> +                            TYPE_MACIO_NVRAM, &error_abort, NULL);
>      dev = DEVICE(&os->nvram);
>      qdev_prop_set_uint32(dev, "size", 0x2000);
>      qdev_prop_set_uint32(dev, "it_shift", 4);

Hmmm actually I think this should be using macio_init_child_obj() which does 
the same
as you have done above, plus it sets the qbus correctly too. And also a minor 
nit on
the subject line: you should mention that this just for Old World Macs, since 
for New
World Macs the NVRAM is located elsewhere.

In fact it looks like there are also a few cases in macio_newworld_realize() 
where
this function should be used too, if you fancy touching those up whilst you're 
in the
area.


ATB,

Mark.

Reply via email to