summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--drivers/core/root.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/core/root.c b/drivers/core/root.c
index 93ab568296..33cfde6a5c 100644
--- a/drivers/core/root.c
+++ b/drivers/core/root.c
@@ -44,8 +44,10 @@ struct udevice *dm_root(void)
void dm_fixup_for_gd_move(struct global_data *new_gd)
{
/* The sentinel node has moved, so update things that point to it */
- new_gd->uclass_root.next->prev = &new_gd->uclass_root;
- new_gd->uclass_root.prev->next = &new_gd->uclass_root;
+ if (gd->dm_root) {
+ new_gd->uclass_root.next->prev = &new_gd->uclass_root;
+ new_gd->uclass_root.prev->next = &new_gd->uclass_root;
+ }
}
fdt_addr_t dm_get_translation_offset(void)