| 394 | } |
| 395 | |
| 396 | static void fdt_packblocks_(const char *old, char *new, |
| 397 | int mem_rsv_size, |
| 398 | int struct_size, |
| 399 | int strings_size) |
| 400 | { |
| 401 | int mem_rsv_off, struct_off, strings_off; |
| 402 | |
| 403 | mem_rsv_off = FDT_ALIGN(sizeof(struct fdt_header), 8); |
| 404 | struct_off = mem_rsv_off + mem_rsv_size; |
| 405 | strings_off = struct_off + struct_size; |
| 406 | |
| 407 | memmove(new + mem_rsv_off, old + fdt_off_mem_rsvmap(old), mem_rsv_size); |
| 408 | fdt_set_off_mem_rsvmap(new, mem_rsv_off); |
| 409 | |
| 410 | memmove(new + struct_off, old + fdt_off_dt_struct(old), struct_size); |
| 411 | fdt_set_off_dt_struct(new, struct_off); |
| 412 | fdt_set_size_dt_struct(new, struct_size); |
| 413 | |
| 414 | memmove(new + strings_off, old + fdt_off_dt_strings(old), strings_size); |
| 415 | fdt_set_off_dt_strings(new, strings_off); |
| 416 | fdt_set_size_dt_strings(new, fdt_size_dt_strings(old)); |
| 417 | } |
| 418 | |
| 419 | int fdt_open_into(const void *fdt, void *buf, int bufsize) |
| 420 | { |
no outgoing calls
no test coverage detected