[SLOF] [PATCH 0/2] Fix creation of nodes at CAS some more

Greg Kurz groug at kaod.org
Thu Jan 30 05:20:59 AEDT 2020


Since QEMU passes a full FDT to SLOF at CAS, we're observing strange
things in the device tree if a guest has switched from XICS to XIVE:

# dtc -I fs -O dts /proc/device-tree
<stdout>: Warning (unit_address_vs_reg): /interrupt-controller: node has a reg or ranges property, but no unit name
...
        interrupt-controller {
                ibm,xive-eq-sizes = <0x10>;
                device_type = "power-ivpe";
                ibm,interrupt-server-ranges = <0x00 0x03>;
                compatible = "ibm,power-ivpe";
                #interrupt-cells = <0x02>;
                reg = <0x60302 0x31b0000 0x00 0x10000 0x60302 0x31a0000 0x00 0x10000>;
                phandle = <0xe7448a8>;
                ibm,xive-lisn-ranges = <0x00 0x03>;
                interrupt-controller;
        };

instead of the expected:

        interrupt-controller at 60302031b0000 {
                ibm,xive-eq-sizes = <0x10>;
                device_type = "power-ivpe";
                compatible = "ibm,power-ivpe";
                #interrupt-cells = <0x02>;
                reg = <0x60302 0x31b0000 0x00 0x10000 0x60302 0x31a0000 0x00 0x10000>;
                phandle = <0xe77e6d0>;
                ibm,xive-lisn-ranges = <0x00 0x03>;
                interrupt-controller;
        };

It seems that SLOF should fully replace the "interrupt-controller" node
rather than apply the XIVE properties over the existing XICS one. This
requires SLOF to have broader support for node creation at CAS than
it currently has (ie, restricted to ibm,dynamic-reconfiguration-memory
and memory nodes for now).

This series is hence built on top of Alexey's "fdt: Fix creating new nodes
at H_CAS" patch (Message-Id: <20200129022316.129492-1-aik at ozlabs.ru>).

Patch 1 allows to set the appropriate unit name for nodes that need more
than just the first entry of the "reg" property. This is the case for
the XIVE "interrupt-controller" node, but also for other type of nodes
we might want to create like PHB nodes for example. As already mentioned
on the list, this patch could even be squashed into Alexey's one.

Patch 2 handles the actual replacement of the existing "interrupt-controller"
node by the new one.

--
Greg

---

Greg Kurz (2):
      fdt: Fix unit name during CAS update
      fdt: Fix update of "interrupt-controller" node at CAS


 board-qemu/slof/fdt.fs |   14 ++++++++++++++
 1 file changed, 14 insertions(+)



More information about the SLOF mailing list