| 144 | } |
| 145 | |
| 146 | const struct dtb_node *dtb_node_find_subnode(const struct dtb_node *node, const char *subnode_name) |
| 147 | { |
| 148 | const struct dtb_node *subnode; |
| 149 | |
| 150 | RT_ASSERT(dtb_node_valid(node)); |
| 151 | debug("%s: %s: ", __func__, subnode_name); |
| 152 | |
| 153 | for (node = node->child; node; node = node->sibling) |
| 154 | { |
| 155 | if (!strcmp(subnode_name, node->name)) |
| 156 | break; |
| 157 | } |
| 158 | subnode = node; |
| 159 | |
| 160 | debug("%s\n", dtb_node_valid(subnode) ?\ |
| 161 | dtb_node_get_name(subnode) : "<none>"); |
| 162 | |
| 163 | return subnode; |
| 164 | } |
| 165 | |
| 166 | struct dtb_node *dtb_node_first_subnode(const struct dtb_node *node) |
| 167 | { |
nothing calls this directly
no test coverage detected