prom.c (6fae9c25134baffbeeb20031479e7ff6f6d8eec0) | prom.c (6dd227002972be910c6191f38f8641e01796557f) |
---|---|
1/* 2 * Procedures for creating, accessing and interpreting the device tree. 3 * 4 * Paul Mackerras August 1996. 5 * Copyright (C) 1996-2005 Paul Mackerras. 6 * 7 * Adapted for 64bit PowerPC by Dave Engebretsen and Peter Bergner. 8 * {engebret|bergner}@us.ibm.com --- 83 unchanged lines hidden (view full) --- 92 unsigned long start, size; 93 void *p; 94 95 DBG("-> move_device_tree\n"); 96 97 start = __pa(initial_boot_params); 98 size = be32_to_cpu(initial_boot_params->totalsize); 99 | 1/* 2 * Procedures for creating, accessing and interpreting the device tree. 3 * 4 * Paul Mackerras August 1996. 5 * Copyright (C) 1996-2005 Paul Mackerras. 6 * 7 * Adapted for 64bit PowerPC by Dave Engebretsen and Peter Bergner. 8 * {engebret|bergner}@us.ibm.com --- 83 unchanged lines hidden (view full) --- 92 unsigned long start, size; 93 void *p; 94 95 DBG("-> move_device_tree\n"); 96 97 start = __pa(initial_boot_params); 98 size = be32_to_cpu(initial_boot_params->totalsize); 99 |
100 if ((memory_limit && (start + size) > memory_limit) || | 100 if ((memory_limit && (start + size) > PHYSICAL_START + memory_limit) || |
101 overlaps_crashkernel(start, size)) { 102 p = __va(memblock_alloc(size, PAGE_SIZE)); 103 memcpy(p, initial_boot_params, size); 104 initial_boot_params = (struct boot_param_header *)p; 105 DBG("Moved device tree to 0x%p\n", p); 106 } 107 108 DBG("<- move_device_tree\n"); --- 818 unchanged lines hidden --- | 101 overlaps_crashkernel(start, size)) { 102 p = __va(memblock_alloc(size, PAGE_SIZE)); 103 memcpy(p, initial_boot_params, size); 104 initial_boot_params = (struct boot_param_header *)p; 105 DBG("Moved device tree to 0x%p\n", p); 106 } 107 108 DBG("<- move_device_tree\n"); --- 818 unchanged lines hidden --- |