void __init device_tree_init(void) { unsigned long base, size; if (!initial_boot_params) return; base = virt_to_phys((void *)initial_boot_params); size = be32_to_cpu(initial_boot_params->totalsize); /* */ reserve_mem_mach(base, size); unflatten_device_tree(); /* */ free_mem_mach(base, size); }
void __init device_tree_init(void) { unsigned long base, size; if (!initial_boot_params) return; base = virt_to_phys((void *)initial_boot_params); size = be32_to_cpu(initial_boot_params->totalsize); /* Before we do anything, lets reserve the dt blob */ reserve_mem_mach(base, size); unflatten_device_tree(); /* free the space reserved for the dt blob */ free_mem_mach(base, size); }