Lines Matching refs:mem_start
1981 static void __init *make_room(unsigned long *mem_start, unsigned long *mem_end, in make_room() argument
1986 *mem_start = _ALIGN(*mem_start, align); in make_room()
1987 while ((*mem_start + needed) > *mem_end) { in make_room()
2005 ret = (void *)*mem_start; in make_room()
2006 *mem_start += needed; in make_room()
2011 #define dt_push_token(token, mem_start, mem_end) do { \ argument
2012 void *room = make_room(mem_start, mem_end, 4, 4); \
2037 unsigned long *mem_start, in scan_dt_build_strings() argument
2050 namep = make_room(mem_start, mem_end, MAX_PROPERTY_NAME, 1); in scan_dt_build_strings()
2053 *mem_start = (unsigned long)namep; in scan_dt_build_strings()
2059 *mem_start = (unsigned long)namep; in scan_dt_build_strings()
2066 *mem_start = (unsigned long)namep; in scan_dt_build_strings()
2070 *mem_start = (unsigned long)namep + strlen(namep) + 1; in scan_dt_build_strings()
2071 dt_string_end = *mem_start; in scan_dt_build_strings()
2079 scan_dt_build_strings(child, mem_start, mem_end); in scan_dt_build_strings()
2084 static void __init scan_dt_build_struct(phandle node, unsigned long *mem_start, in scan_dt_build_struct() argument
2094 dt_push_token(OF_DT_BEGIN_NODE, mem_start, mem_end); in scan_dt_build_struct()
2097 namep = (char *)*mem_start; in scan_dt_build_struct()
2098 room = *mem_end - *mem_start; in scan_dt_build_struct()
2105 if (l >= *mem_end - *mem_start) in scan_dt_build_struct()
2106 namep = make_room(mem_start, mem_end, l+1, 1); in scan_dt_build_struct()
2122 *mem_start = _ALIGN((unsigned long)lp + 1, 4); in scan_dt_build_struct()
2161 dt_push_token(OF_DT_PROP, mem_start, mem_end); in scan_dt_build_struct()
2162 dt_push_token(l, mem_start, mem_end); in scan_dt_build_struct()
2163 dt_push_token(soff, mem_start, mem_end); in scan_dt_build_struct()
2166 valp = make_room(mem_start, mem_end, l, 4); in scan_dt_build_struct()
2168 *mem_start = _ALIGN(*mem_start, 4); in scan_dt_build_struct()
2183 dt_push_token(OF_DT_PROP, mem_start, mem_end); in scan_dt_build_struct()
2184 dt_push_token(4, mem_start, mem_end); in scan_dt_build_struct()
2185 dt_push_token(soff, mem_start, mem_end); in scan_dt_build_struct()
2186 valp = make_room(mem_start, mem_end, 4, 4); in scan_dt_build_struct()
2194 scan_dt_build_struct(child, mem_start, mem_end); in scan_dt_build_struct()
2198 dt_push_token(OF_DT_END_NODE, mem_start, mem_end); in scan_dt_build_struct()
2204 unsigned long mem_start, mem_end, room; in flatten_device_tree() local
2219 mem_start = (unsigned long)alloc_up(room, PAGE_SIZE); in flatten_device_tree()
2220 if (mem_start == 0) in flatten_device_tree()
2222 mem_end = mem_start + room; in flatten_device_tree()
2230 mem_start = _ALIGN(mem_start, 4); in flatten_device_tree()
2231 hdr = make_room(&mem_start, &mem_end, in flatten_device_tree()
2234 rsvmap = make_room(&mem_start, &mem_end, sizeof(mem_reserve_map), 8); in flatten_device_tree()
2237 mem_start = PAGE_ALIGN(mem_start); in flatten_device_tree()
2238 dt_string_start = mem_start; in flatten_device_tree()
2239 mem_start += 4; /* hole */ in flatten_device_tree()
2242 namep = make_room(&mem_start, &mem_end, 16, 1); in flatten_device_tree()
2244 mem_start = (unsigned long)namep + strlen(namep) + 1; in flatten_device_tree()
2248 scan_dt_build_strings(root, &mem_start, &mem_end); in flatten_device_tree()
2249 dt_string_end = mem_start; in flatten_device_tree()
2252 mem_start = PAGE_ALIGN(mem_start); in flatten_device_tree()
2253 dt_struct_start = mem_start; in flatten_device_tree()
2255 scan_dt_build_struct(root, &mem_start, &mem_end); in flatten_device_tree()
2256 dt_push_token(OF_DT_END, &mem_start, &mem_end); in flatten_device_tree()
2257 dt_struct_end = PAGE_ALIGN(mem_start); in flatten_device_tree()