aboutsummaryrefslogtreecommitdiff
path: root/core/device.c
diff options
context:
space:
mode:
authorppaidipe@linux.vnet.ibm.com <ppaidipe@linux.vnet.ibm.com>2016-11-22 10:08:48 +0530
committerStewart Smith <stewart@linux.vnet.ibm.com>2016-12-21 16:54:26 +1100
commit77be3339fba1ea188b19bde5c4199b63c9024a30 (patch)
treef916f72d11eadf3829bb9de4584bc64fae9c7e2b /core/device.c
parent7d6e73810dec029678a0d14a3f47485d4025520e (diff)
downloadskiboot-77be3339fba1ea188b19bde5c4199b63c9024a30.zip
skiboot-77be3339fba1ea188b19bde5c4199b63c9024a30.tar.gz
skiboot-77be3339fba1ea188b19bde5c4199b63c9024a30.tar.bz2
Add fwts annotation for duplicate DT node entries.
Reference bug: https://github.com/open-power/op-build/issues/751 Signed-off-by: Pridhiviraj Paidipeddi <ppaidipe@linux.vnet.ibm.com> [stewart@linux.vnet.ibm.com: tweak message slightly] Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
Diffstat (limited to 'core/device.c')
-rw-r--r--core/device.c20
1 files changed, 19 insertions, 1 deletions
diff --git a/core/device.c b/core/device.c
index 63b5df8..d0731b1 100644
--- a/core/device.c
+++ b/core/device.c
@@ -799,7 +799,25 @@ int dt_expand_node(struct dt_node *node, const void *fdt, int fdt_node)
* going for now, we may ultimately want to
* assert
*/
- (void)dt_attach_root(node, child);
+ if (!dt_attach_root(node, child))
+ /**
+ * @fwts-label DTHasDuplicateNodeID
+ * @fwts-advice OPAL will parse the Flattened
+ * Device Tree(FDT), which can be generated
+ * from different firmware sources. During
+ * expansion of FDT, OPAL observed a node
+ * assigned multiple times (a duplicate). This
+ * indicates either a Hostboot bug *OR*, more
+ * likely, a bug in the platform XML. Check
+ * the platform XML for duplicate IDs for
+ * this type of device. Because of this
+ * duplicate node, OPAL won't add the hardware
+ * device found with a duplicate node ID into
+ * DT, rendering the corresponding device not
+ * functional.
+ */
+ prlog(PR_ERR, "DT: Found duplicate node: %s\n",
+ child->name);
break;
case FDT_END:
return -1;