/* returns: 0 on success Negative error code on failure  */
static int overlay_adjust_node_phandles(void *fdto, int node, uint32_t delta)
/* returns: 0 on success Negative error code on failure  */
static int overlay_adjust_node_phandles(void *fdto, int node, uint32_t delta)
{
  int  child;
  int  ret;
  ret = overlay_phandle_add_offset (fdto, node, "phandle", delta);
  if (ret && (ret != -FDT_ERR_NOTFOUND)) {
    return ret;
  }
  ret = overlay_phandle_add_offset (fdto, node, "linux,phandle", delta);
  if (ret && (ret != -FDT_ERR_NOTFOUND)) {
    return ret;
  }
  fdt_for_each_subnode (child, fdto, node) {
    ret = overlay_adjust_node_phandles (fdto, child, delta);
    if (ret) {
      return ret;
    }
  }
  return 0;
}