Skip to content

Commit

Permalink
x86: use FDT accessors for FDT blob header data
Browse files Browse the repository at this point in the history
Remove the direct accesses to FDT header data using accessor
function instead. This makes the code more readable and makes the FDT
blob structure more opaque to the arch code. This also prepares for
removing struct boot_param_header completely.

Signed-off-by: Rob Herring <robh@kernel.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: "H. Peter Anvin" <hpa@zytor.com>
Cc: x86@kernel.org
Tested-by: Grant Likely <grant.likely@linaro.org>
  • Loading branch information
Rob Herring committed Apr 30, 2014
1 parent 060f78c commit 1bac186
Showing 1 changed file with 5 additions and 7 deletions.
12 changes: 5 additions & 7 deletions arch/x86/kernel/devicetree.c
Original file line number Diff line number Diff line change
Expand Up @@ -206,23 +206,21 @@ static void __init dtb_apic_setup(void)
static void __init x86_flattree_get_config(void)
{
u32 size, map_len;
struct boot_param_header *dt;
void *dt;

if (!initial_dtb)
return;

map_len = max(PAGE_SIZE - (initial_dtb & ~PAGE_MASK),
(u64)sizeof(struct boot_param_header));
map_len = max(PAGE_SIZE - (initial_dtb & ~PAGE_MASK), (u64)128);

dt = early_memremap(initial_dtb, map_len);
size = be32_to_cpu(dt->totalsize);
initial_boot_params = dt = early_memremap(initial_dtb, map_len);
size = of_get_flat_dt_size();
if (map_len < size) {
early_iounmap(dt, map_len);
dt = early_memremap(initial_dtb, size);
initial_boot_params = dt = early_memremap(initial_dtb, size);
map_len = size;
}

initial_boot_params = dt;
unflatten_and_copy_device_tree();
early_iounmap(dt, map_len);
}
Expand Down

0 comments on commit 1bac186

Please sign in to comment.