diff --git a/drivers/of/partition.c b/drivers/of/partition.c index ac20490..6f9651a 100644 --- a/drivers/of/partition.c +++ b/drivers/of/partition.c @@ -130,6 +130,7 @@ { struct cdev *cdev = ctx, *partcdev; struct device_node *np, *part, *partnode; + char *name; int ret; int n_cells, n_parts = 0; @@ -153,7 +154,9 @@ else n_cells = 1; - np = of_find_node_by_path_from(root, cdev->device_node->full_name); + name = of_get_reproducible_name(cdev->device_node); + np = of_find_node_by_reproducible_name(root, name); + free(name); if (!np) { dev_err(cdev->dev, "Cannot find nodepath %s, cannot fixup\n", cdev->device_node->full_name);