dm: core: Add address translation in fdt_get_resource
[platform/kernel/u-boot.git] / lib / fdtdec.c
index 8645891..4b097fb 100644 (file)
@@ -942,7 +942,11 @@ int fdt_get_resource(const void *fdt, int node, const char *property,
 
        while (ptr + na + ns <= end) {
                if (i == index) {
-                       res->start = fdtdec_get_number(ptr, na);
+                       if (CONFIG_IS_ENABLED(OF_TRANSLATE))
+                               res->start = fdt_translate_address(fdt, node, ptr);
+                       else
+                               res->start = fdtdec_get_number(ptr, na);
+
                        res->end = res->start;
                        res->end += fdtdec_get_number(&ptr[na], ns) - 1;
                        return 0;