[Skiboot] [PATCH 3/4] core/ipmi: Set interrupt-parent property

Samuel Mendoza-Jonas sam at mendozajonas.com
Tue Jun 28 13:07:08 AEST 2016


This allows ipmi-opal to properly use the OPAL irqchip rather than
falling back to the event interface in Linux.

Signed-off-by: Samuel Mendoza-Jonas <sam at mendozajonas.com>
Signed-off-by: Alistair Popple <alistair at popple.id.au>
---
 core/ipmi-opal.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/core/ipmi-opal.c b/core/ipmi-opal.c
index 1b28aa6..c86f20d 100644
--- a/core/ipmi-opal.c
+++ b/core/ipmi-opal.c
@@ -127,7 +127,7 @@ out_unlock:
 
 void ipmi_opal_init(void)
 {
-	struct dt_node *opal_ipmi;
+	struct dt_node *opal_ipmi, *opal_event;
 
 	opal_ipmi = dt_new(opal_node, "ipmi");
 	dt_add_property_strings(opal_ipmi, "compatible", "ibm,opal-ipmi");
@@ -135,6 +135,10 @@ void ipmi_opal_init(void)
 			      IPMI_DEFAULT_INTERFACE);
 	dt_add_property_cells(opal_ipmi, "interrupts",
 			      ilog2(ipmi_backend->opal_event_ipmi_recv));
+	opal_event = dt_find_by_name(opal_node, "event");
+	if (opal_event)
+		dt_add_property_cells(opal_ipmi, "interrupt-parent",
+				      opal_event->phandle);
 
 	opal_register(OPAL_IPMI_SEND, opal_ipmi_send, 3);
 	opal_register(OPAL_IPMI_RECV, opal_ipmi_recv, 3);
-- 
2.9.0



More information about the Skiboot mailing list