Revision 80ad7816

b/device_tree.c
118 118

  
119 119
    return fdt_nop_node(fdt, offset);
120 120
}
121

  
122
int qemu_devtree_add_subnode(void *fdt, const char *name)
123
{
124
    int offset;
125
    char *dupname = g_strdup(name);
126
    char *basename = strrchr(dupname, '/');
127
    int retval;
128

  
129
    if (!basename) {
130
        return -1;
131
    }
132

  
133
    basename[0] = '\0';
134
    basename++;
135

  
136
    offset = fdt_path_offset(fdt, dupname);
137
    if (offset < 0) {
138
        return offset;
139
    }
140

  
141
    retval = fdt_add_subnode(fdt, offset, basename);
142
    g_free(dupname);
143
    return retval;
144
}
b/device_tree.h
23 23
int qemu_devtree_setprop_string(void *fdt, const char *node_path,
24 24
                                const char *property, const char *string);
25 25
int qemu_devtree_nop_node(void *fdt, const char *node_path);
26
int qemu_devtree_add_subnode(void *fdt, const char *name);
26 27

  
27 28
#endif /* __DEVICE_TREE_H__ */

Also available in: Unified diff