|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen master] xen/dts: Don't add a fake property "name" in the device tree
commit 190ece328e74d04bcf1c1bed386a7d1cfe9b031e
Author: Julien Grall <julien.grall@xxxxxxxxxx>
AuthorDate: Fri Sep 13 13:49:10 2013 +0100
Commit: Ian Campbell <ian.campbell@xxxxxxxxxx>
CommitDate: Tue Sep 17 15:27:43 2013 +0100
xen/dts: Don't add a fake property "name" in the device tree
On new Flat Device Tree version, the property "name" may not exist.
The property is never used in Xen code except to set the field "name" of
dt_device_node.
For convenience, remove the fake property. It will save space during the
creation of the dom0 FDT.
Signed-off-by: Julien Grall <julien.grall@xxxxxxxxxx>
Acked-by: Ian Campbell <ian.campbell@xxxxxxxxxx>
---
xen/common/device_tree.c | 11 ++++++++++-
1 files changed, 10 insertions(+), 1 deletions(-)
diff --git a/xen/common/device_tree.c b/xen/common/device_tree.c
index 2c2dc52..61134fe 100644
--- a/xen/common/device_tree.c
+++ b/xen/common/device_tree.c
@@ -1563,8 +1563,17 @@ static unsigned long __init unflatten_dt_node(const void
*fdt,
pp->name = "name";
pp->length = sz;
pp->value = pp + 1;
+ /*
+ * The device tree creation code assume that the property
+ * "name" is not a fake.
+ * To avoid a big divergence with Linux code, only remove
+ * property link. In this case we will lose a bit of memory
+ */
+#if 0
*prev_pp = pp;
prev_pp = &pp->next;
+#endif
+ np->name = pp->value;
memcpy(pp->value, ps, sz - 1);
((char *)pp->value)[sz - 1] = 0;
dt_dprintk("fixed up name for %s -> %s\n", pathp,
@@ -1574,7 +1583,7 @@ static unsigned long __init unflatten_dt_node(const void
*fdt,
if ( allnextpp )
{
*prev_pp = NULL;
- np->name = dt_get_property(np, "name", NULL);
+ np->name = (np->name) ? : dt_get_property(np, "name", NULL);
np->type = dt_get_property(np, "device_type", NULL);
if ( !np->name )
--
generated by git-patchbot for /home/xen/git/xen.git#master
_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |