Lines Matching refs:mem_start
2476 static void __init *make_room(unsigned long *mem_start, unsigned long *mem_end, in make_room() argument
2481 *mem_start = ALIGN(*mem_start, align); in make_room()
2482 while ((*mem_start + needed) > *mem_end) { in make_room()
2500 ret = (void *)*mem_start; in make_room()
2501 *mem_start += needed; in make_room()
2506 #define dt_push_token(token, mem_start, mem_end) do { \ argument
2507 void *room = make_room(mem_start, mem_end, 4, 4); \
2532 unsigned long *mem_start, in scan_dt_build_strings() argument
2545 namep = make_room(mem_start, mem_end, MAX_PROPERTY_NAME, 1); in scan_dt_build_strings()
2548 *mem_start = (unsigned long)namep; in scan_dt_build_strings()
2554 *mem_start = (unsigned long)namep; in scan_dt_build_strings()
2561 *mem_start = (unsigned long)namep; in scan_dt_build_strings()
2565 *mem_start = (unsigned long)namep + prom_strlen(namep) + 1; in scan_dt_build_strings()
2566 dt_string_end = *mem_start; in scan_dt_build_strings()
2574 scan_dt_build_strings(child, mem_start, mem_end); in scan_dt_build_strings()
2579 static void __init scan_dt_build_struct(phandle node, unsigned long *mem_start, in scan_dt_build_struct() argument
2589 dt_push_token(OF_DT_BEGIN_NODE, mem_start, mem_end); in scan_dt_build_struct()
2592 namep = (char *)*mem_start; in scan_dt_build_struct()
2593 room = *mem_end - *mem_start; in scan_dt_build_struct()
2600 if (l >= *mem_end - *mem_start) in scan_dt_build_struct()
2601 namep = make_room(mem_start, mem_end, l+1, 1); in scan_dt_build_struct()
2617 *mem_start = ALIGN((unsigned long)lp + 1, 4); in scan_dt_build_struct()
2656 dt_push_token(OF_DT_PROP, mem_start, mem_end); in scan_dt_build_struct()
2657 dt_push_token(l, mem_start, mem_end); in scan_dt_build_struct()
2658 dt_push_token(soff, mem_start, mem_end); in scan_dt_build_struct()
2661 valp = make_room(mem_start, mem_end, l, 4); in scan_dt_build_struct()
2663 *mem_start = ALIGN(*mem_start, 4); in scan_dt_build_struct()
2675 dt_push_token(OF_DT_PROP, mem_start, mem_end); in scan_dt_build_struct()
2676 dt_push_token(4, mem_start, mem_end); in scan_dt_build_struct()
2677 dt_push_token(soff, mem_start, mem_end); in scan_dt_build_struct()
2678 valp = make_room(mem_start, mem_end, 4, 4); in scan_dt_build_struct()
2686 scan_dt_build_struct(child, mem_start, mem_end); in scan_dt_build_struct()
2690 dt_push_token(OF_DT_END_NODE, mem_start, mem_end); in scan_dt_build_struct()
2696 unsigned long mem_start, mem_end, room; in flatten_device_tree() local
2711 mem_start = (unsigned long)alloc_up(room, PAGE_SIZE); in flatten_device_tree()
2712 if (mem_start == 0) in flatten_device_tree()
2714 mem_end = mem_start + room; in flatten_device_tree()
2722 mem_start = ALIGN(mem_start, 4); in flatten_device_tree()
2723 hdr = make_room(&mem_start, &mem_end, in flatten_device_tree()
2726 rsvmap = make_room(&mem_start, &mem_end, sizeof(mem_reserve_map), 8); in flatten_device_tree()
2729 mem_start = PAGE_ALIGN(mem_start); in flatten_device_tree()
2730 dt_string_start = mem_start; in flatten_device_tree()
2731 mem_start += 4; /* hole */ in flatten_device_tree()
2734 namep = make_room(&mem_start, &mem_end, 16, 1); in flatten_device_tree()
2736 mem_start = (unsigned long)namep + prom_strlen(namep) + 1; in flatten_device_tree()
2740 scan_dt_build_strings(root, &mem_start, &mem_end); in flatten_device_tree()
2741 dt_string_end = mem_start; in flatten_device_tree()
2744 mem_start = PAGE_ALIGN(mem_start); in flatten_device_tree()
2745 dt_struct_start = mem_start; in flatten_device_tree()
2747 scan_dt_build_struct(root, &mem_start, &mem_end); in flatten_device_tree()
2748 dt_push_token(OF_DT_END, &mem_start, &mem_end); in flatten_device_tree()
2749 dt_struct_end = PAGE_ALIGN(mem_start); in flatten_device_tree()