[PATCH 1/1] ACPI / property: fix data node parsing in acpi_get_next_subnode

From: Irina Tirdea
Date: Sat Mar 12 2016 - 19:34:28 EST


When an ACPI node has both ACPI device nodes and ACPI data nodes,
acpi_get_next_subnode will return the ACPI data nodes of its last
parsed child.

Make sure that the acpi device that is parsed is the original acpi
node and not any of its children.

Signed-off-by: Irina Tirdea <irina.tirdea@xxxxxxxxx>
---
drivers/acpi/property.c | 1 +
1 file changed, 1 insertion(+)

diff --git a/drivers/acpi/property.c b/drivers/acpi/property.c
index 2aee416..f2fd3fe 100644
--- a/drivers/acpi/property.c
+++ b/drivers/acpi/property.c
@@ -816,6 +816,7 @@ struct fwnode_handle *acpi_get_next_subnode(struct device *dev,
next = adev->node.next;
if (next == head) {
child = NULL;
+ adev = ACPI_COMPANION(dev);
goto nondev;
}
adev = list_entry(next, struct acpi_device, node);
--
1.9.1