<p>Patrick Rudolph has uploaded this change for <strong>review</strong>.</p><p><a href="https://review.coreboot.org/26693">View Change</a></p><pre style="font-family: monospace,monospace; white-space: pre-wrap;">devicetree: Add method to delete property by name<br><br>Change-Id: I7c58a2411206bca62d0e96fa627530e937383ac9<br>Signed-off-by: Patrick Rudolph <patrick.rudolph@9elements.com><br>---<br>M src/include/device_tree.h<br>M src/lib/device_tree.c<br>2 files changed, 22 insertions(+), 0 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;">git pull ssh://review.coreboot.org:29418/coreboot refs/changes/93/26693/1</pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;"><span>diff --git a/src/include/device_tree.h b/src/include/device_tree.h</span><br><span>index 107fcf6..8433ddf 100644</span><br><span>--- a/src/include/device_tree.h</span><br><span>+++ b/src/include/device_tree.h</span><br><span>@@ -149,6 +149,8 @@</span><br><span>                                    void *data, size_t size);</span><br><span> // Write src into *dest as a 'length'-byte big-endian integer.</span><br><span> void dt_write_int(u8 *dest, u64 src, size_t length);</span><br><span style="color: hsl(120, 100%, 40%);">+// Delete a property</span><br><span style="color: hsl(120, 100%, 40%);">+void dt_delete_prop(struct device_tree_node *node, const char *name);</span><br><span> // Add different kinds of properties to a node, or update existing ones.</span><br><span> void dt_add_bin_prop(struct device_tree_node *node, const char *name, void *data,</span><br><span>                      size_t size);</span><br><span>diff --git a/src/lib/device_tree.c b/src/lib/device_tree.c</span><br><span>index 0a88c1f..5edd729 100644</span><br><span>--- a/src/lib/device_tree.c</span><br><span>+++ b/src/lib/device_tree.c</span><br><span>@@ -748,6 +748,26 @@</span><br><span>  * @param data            The raw data blob to be stored in the property.</span><br><span>  * @param size               The size of data in bytes.</span><br><span>  */</span><br><span style="color: hsl(120, 100%, 40%);">+void dt_delete_prop(struct device_tree_node *node, const char *name)</span><br><span style="color: hsl(120, 100%, 40%);">+{</span><br><span style="color: hsl(120, 100%, 40%);">+    struct device_tree_property *prop;</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+  list_for_each(prop, node->properties, list_node) {</span><br><span style="color: hsl(120, 100%, 40%);">+         if (!strcmp(prop->prop.name, name)) {</span><br><span style="color: hsl(120, 100%, 40%);">+                      list_remove(&prop->list_node);</span><br><span style="color: hsl(120, 100%, 40%);">+                 return;</span><br><span style="color: hsl(120, 100%, 40%);">+               }</span><br><span style="color: hsl(120, 100%, 40%);">+     }</span><br><span style="color: hsl(120, 100%, 40%);">+}</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+/*</span><br><span style="color: hsl(120, 100%, 40%);">+ * Add an arbitrary property to a node, or update it if it already exists.</span><br><span style="color: hsl(120, 100%, 40%);">+ *</span><br><span style="color: hsl(120, 100%, 40%);">+ * @param node              The device tree node to add to.</span><br><span style="color: hsl(120, 100%, 40%);">+ * @param name         The name of the new property.</span><br><span style="color: hsl(120, 100%, 40%);">+ * @param data           The raw data blob to be stored in the property.</span><br><span style="color: hsl(120, 100%, 40%);">+ * @param size         The size of data in bytes.</span><br><span style="color: hsl(120, 100%, 40%);">+ */</span><br><span> void dt_add_bin_prop(struct device_tree_node *node, const char *name,</span><br><span>                  void *data, size_t size)</span><br><span> {</span><br><span></span><br></pre><p>To view, visit <a href="https://review.coreboot.org/26693">change 26693</a>. To unsubscribe, or for help writing mail filters, visit <a href="https://review.coreboot.org/settings">settings</a>.</p><div itemscope itemtype="http://schema.org/EmailMessage"><div itemscope itemprop="action" itemtype="http://schema.org/ViewAction"><link itemprop="url" href="https://review.coreboot.org/26693"/><meta itemprop="name" content="View Change"/></div></div>

<div style="display:none"> Gerrit-Project: coreboot </div>
<div style="display:none"> Gerrit-Branch: master </div>
<div style="display:none"> Gerrit-MessageType: newchange </div>
<div style="display:none"> Gerrit-Change-Id: I7c58a2411206bca62d0e96fa627530e937383ac9 </div>
<div style="display:none"> Gerrit-Change-Number: 26693 </div>
<div style="display:none"> Gerrit-PatchSet: 1 </div>
<div style="display:none"> Gerrit-Owner: Patrick Rudolph <patrick.rudolph@9elements.com> </div>