aboutsummaryrefslogtreecommitdiff
path: root/drivers/of
diff options
context:
space:
mode:
authorRob Herring <robh@kernel.org>2018-08-30 11:20:20 -0500
committerRob Herring (Arm) <robh@kernel.org>2024-05-31 08:33:54 -0500
commit596c29f3c8dea8b6ea74b930a03a693ad47819e3 (patch)
tree9f2afce9be078fc4ca849ecbac5ac8d995ea9a3a /drivers/of
parent554b66233623efd7a029135d355aeb2b7c8eb527 (diff)
of/fdt: avoid re-parsing '#{address,size}-cells' in of_fdt_limit_memory
Now that we initialize dt_root_addr_cells and dt_root_size_cells earlier, use them and simplify of_fdt_limit_memory. Link: https://lore.kernel.org/all/20180830190523.31474-3-robh@kernel.org/ Signed-off-by: Rob Herring <robh@kernel.org>
Diffstat (limited to 'drivers/of')
-rw-r--r--drivers/of/fdt.c23
1 files changed, 1 insertions, 22 deletions
diff --git a/drivers/of/fdt.c b/drivers/of/fdt.c
index 00bb8c9b62fa..68103ad230ee 100644
--- a/drivers/of/fdt.c
+++ b/drivers/of/fdt.c
@@ -52,28 +52,7 @@ void __init of_fdt_limit_memory(int limit)
int memory;
int len;
const void *val;
- int nr_address_cells = OF_ROOT_NODE_ADDR_CELLS_DEFAULT;
- int nr_size_cells = OF_ROOT_NODE_SIZE_CELLS_DEFAULT;
- const __be32 *addr_prop;
- const __be32 *size_prop;
- int root_offset;
- int cell_size;
-
- root_offset = fdt_path_offset(initial_boot_params, "/");
- if (root_offset < 0)
- return;
-
- addr_prop = fdt_getprop(initial_boot_params, root_offset,
- "#address-cells", NULL);
- if (addr_prop)
- nr_address_cells = fdt32_to_cpu(*addr_prop);
-
- size_prop = fdt_getprop(initial_boot_params, root_offset,
- "#size-cells", NULL);
- if (size_prop)
- nr_size_cells = fdt32_to_cpu(*size_prop);
-
- cell_size = sizeof(uint32_t)*(nr_address_cells + nr_size_cells);
+ int cell_size = sizeof(uint32_t)*(dt_root_addr_cells + dt_root_size_cells);
memory = fdt_path_offset(initial_boot_params, "/memory");
if (memory > 0) {