[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH] ppc/pnv: Generate phandle for the "interrupt-pa
From: |
David Gibson |
Subject: |
Re: [Qemu-devel] [PATCH] ppc/pnv: Generate phandle for the "interrupt-parent" property |
Date: |
Wed, 24 Jul 2019 13:23:08 +1000 |
User-agent: |
Mutt/1.12.0 (2019-05-25) |
On Tue, Jul 23, 2019 at 11:01:38AM +0200, Cédric Le Goater wrote:
> Devices such as the BT or serial devices require a valid
> "interrupt-parent" phandle in the device tree and it is currently
> empty (0x0). It was not a problem until now but since OpenFirmare
> started using a recent libdft (>= 1.4.7), petitboot fails to boot the
> system image with error :
>
> dtc_resize: fdt_open_into returned FDT_ERR_BADMAGIC
>
> Provide a phandle for the LPC bus.
>
> Suggested-by: Greg Kurz <address@hidden>
> Signed-off-by: Cédric Le Goater <address@hidden>
I've applied this, since it looks to be correct.
But.. can you connect the dots for me in how this being missing
results in a BADMAGIC error??
> ---
> hw/ppc/pnv.c | 5 +++++
> 1 file changed, 5 insertions(+)
>
> diff --git a/hw/ppc/pnv.c b/hw/ppc/pnv.c
> index 36f57479a1f5..2deceecdccb5 100644
> --- a/hw/ppc/pnv.c
> +++ b/hw/ppc/pnv.c
> @@ -431,9 +431,14 @@ static void pnv_dt_isa(PnvMachineState *pnv, void *fdt)
> .fdt = fdt,
> .offset = isa_offset,
> };
> + uint32_t phandle;
>
> _FDT((fdt_setprop(fdt, isa_offset, "primary", NULL, 0)));
>
> + phandle = qemu_fdt_alloc_phandle(fdt);
> + assert(phandle > 0);
> + _FDT((fdt_setprop_cell(fdt, isa_offset, "phandle", phandle)));
> +
> /* ISA devices are not necessarily parented to the ISA bus so we
> * can not use object_child_foreach() */
> qbus_walk_children(BUS(pnv->isa_bus), pnv_dt_isa_device, NULL, NULL,
> NULL,
--
David Gibson | I'll have my music baroque, and my code
david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other_
| _way_ _around_!
http://www.ozlabs.org/~dgibson
signature.asc
Description: PGP signature