According to LoPAPR 1.1 B.6.12, the "/event-sources" node has an "interrupt-
ranges" property, the format of which is described in B.6.9.1.2 as follows:
“interrupt-ranges”
Standard property name that defines the interrupt number(s) and range(s)
handled by this unit.
prop-encoded-array: List of (int-number, range) specifications.
Int-number is encoded as with encode-int.
Range is encoded as with encode-int.
The first entry in this list shall contain the int-number associated with
the first “reg” property entry. The int-num-ber is the value representing
the interrupt source as would appear in the PowerPC External Interrupt
Architecture XISR. The range shall be the number of sequential interrupt
numbers which this unit can generate.
There's no such thing as a cell count at the end of the array, like the
one introduced by commit ffbb1705a33d in QEMU 2.8. It doesn't seem it had
any impact on existing guests and I couldn't find any related workaround
in linux. So, let's just drop the bogus lines.
Signed-off-by: Greg Kurz <groug@kaod.org>
---
hw/ppc/spapr_events.c | 3 ---
1 file changed, 3 deletions(-)
diff --git a/hw/ppc/spapr_events.c b/hw/ppc/spapr_events.c
index c7a64e6b8dd3..86836f0626dc 100644
--- a/hw/ppc/spapr_events.c
+++ b/hw/ppc/spapr_events.c
@@ -292,9 +292,6 @@ void spapr_dt_events(sPAPRMachineState *spapr, void *fdt)
irq_ranges[count++] = cpu_to_be32(1);
}
- irq_ranges[count] = cpu_to_be32(count);
- count++;
-
_FDT((fdt_setprop(fdt, event_sources, "interrupt-controller", NULL, 0)));
_FDT((fdt_setprop_cell(fdt, event_sources, "#interrupt-cells", 2)));
_FDT((fdt_setprop(fdt, event_sources, "interrupt-ranges",
On Wed, Dec 06, 2017 at 09:16:52AM +0100, Greg Kurz wrote: 1;5002;0c> According to LoPAPR 1.1 B.6.12, the "/event-sources" node has an "interrupt- > ranges" property, the format of which is described in B.6.9.1.2 as follows: > > “interrupt-ranges” > Standard property name that defines the interrupt number(s) and range(s) > handled by this unit. > > prop-encoded-array: List of (int-number, range) specifications. > > Int-number is encoded as with encode-int. > Range is encoded as with encode-int. > > The first entry in this list shall contain the int-number associated with > the first “reg” property entry. The int-num-ber is the value representing > the interrupt source as would appear in the PowerPC External Interrupt > Architecture XISR. The range shall be the number of sequential interrupt > numbers which this unit can generate. > > There's no such thing as a cell count at the end of the array, like the > one introduced by commit ffbb1705a33d in QEMU 2.8. It doesn't seem it had > any impact on existing guests and I couldn't find any related workaround > in linux. So, let's just drop the bogus lines. > > Signed-off-by: Greg Kurz <groug@kaod.org> That does indeed seem bogus. Applied to ppc-for-2.12. > --- > hw/ppc/spapr_events.c | 3 --- > 1 file changed, 3 deletions(-) > > diff --git a/hw/ppc/spapr_events.c b/hw/ppc/spapr_events.c > index c7a64e6b8dd3..86836f0626dc 100644 > --- a/hw/ppc/spapr_events.c > +++ b/hw/ppc/spapr_events.c > @@ -292,9 +292,6 @@ void spapr_dt_events(sPAPRMachineState *spapr, void *fdt) > irq_ranges[count++] = cpu_to_be32(1); > } > > - irq_ranges[count] = cpu_to_be32(count); > - count++; > - > _FDT((fdt_setprop(fdt, event_sources, "interrupt-controller", NULL, 0))); > _FDT((fdt_setprop_cell(fdt, event_sources, "#interrupt-cells", 2))); > _FDT((fdt_setprop(fdt, event_sources, "interrupt-ranges", > -- 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
© 2016 - 2024 Red Hat, Inc.