[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 02/31] dt: add helpers for 2, 3 and 4 cell adds
From: |
Alexander Graf |
Subject: |
[Qemu-devel] [PATCH 02/31] dt: add helpers for 2, 3 and 4 cell adds |
Date: |
Wed, 6 Jun 2012 01:52:53 +0200 |
We have device tree helpers that allow us to create single cell (u32)
wide properties. However, when creating properties that contain an array of
cells, we need to jump through hoops, manually passing in an array with
converted endianness.
To ease the pain of this a bit, create helpers for the most common array
sizes, namely 2, 3 and 4 cells wide properties.
Signed-off-by: Alexander Graf <address@hidden>
---
device_tree.c | 30 ++++++++++++++++++++++++++++++
device_tree.h | 9 +++++++++
2 files changed, 39 insertions(+), 0 deletions(-)
diff --git a/device_tree.c b/device_tree.c
index 94a239e..b1dff4f 100644
--- a/device_tree.c
+++ b/device_tree.c
@@ -117,6 +117,36 @@ int qemu_devtree_setprop_cell(void *fdt, const char
*node_path,
return r;
}
+int qemu_devtree_setprop_cell2(void *fdt, const char *node_path,
+ const char *property, uint32_t val,
+ uint32_t val2)
+{
+ uint32_t tmp[] = { cpu_to_be32(val),
+ cpu_to_be32(val2) };
+ return qemu_devtree_setprop(fdt, node_path, property, tmp, sizeof(tmp));
+}
+
+int qemu_devtree_setprop_cell3(void *fdt, const char *node_path,
+ const char *property, uint32_t val,
+ uint32_t val2, uint32_t val3)
+{
+ uint32_t tmp[] = { cpu_to_be32(val),
+ cpu_to_be32(val2),
+ cpu_to_be32(val3) };
+ return qemu_devtree_setprop(fdt, node_path, property, tmp, sizeof(tmp));
+}
+
+int qemu_devtree_setprop_cell4(void *fdt, const char *node_path,
+ const char *property, uint32_t val,
+ uint32_t val2, uint32_t val3, uint32_t val4)
+{
+ uint32_t tmp[] = { cpu_to_be32(val),
+ cpu_to_be32(val2),
+ cpu_to_be32(val3),
+ cpu_to_be32(val4) };
+ return qemu_devtree_setprop(fdt, node_path, property, tmp, sizeof(tmp));
+}
+
int qemu_devtree_setprop_string(void *fdt, const char *node_path,
const char *property, const char *string)
{
diff --git a/device_tree.h b/device_tree.h
index 4378685..9db7f86 100644
--- a/device_tree.h
+++ b/device_tree.h
@@ -20,6 +20,15 @@ int qemu_devtree_setprop(void *fdt, const char *node_path,
const char *property, void *val_array, int size);
int qemu_devtree_setprop_cell(void *fdt, const char *node_path,
const char *property, uint32_t val);
+int qemu_devtree_setprop_cell2(void *fdt, const char *node_path,
+ const char *property, uint32_t val,
+ uint32_t val2);
+int qemu_devtree_setprop_cell3(void *fdt, const char *node_path,
+ const char *property, uint32_t val,
+ uint32_t val2, uint32_t val3);
+int qemu_devtree_setprop_cell4(void *fdt, const char *node_path,
+ const char *property, uint32_t val,
+ uint32_t val2, uint32_t val3, uint32_t val4);
int qemu_devtree_setprop_string(void *fdt, const char *node_path,
const char *property, const char *string);
int qemu_devtree_nop_node(void *fdt, const char *node_path);
--
1.6.0.2
- [Qemu-devel] [PATCH 13/31] PPC: e500: dt: create / node dynamically, (continued)
- [Qemu-devel] [PATCH 13/31] PPC: e500: dt: create / node dynamically, Alexander Graf, 2012/06/05
- [Qemu-devel] [PATCH 15/31] PPC: e500: dt: create /soc8544 node dynamically, Alexander Graf, 2012/06/05
- [Qemu-devel] [PATCH 16/31] PPC: e500: dt: create serial nodes dynamically, Alexander Graf, 2012/06/05
- [Qemu-devel] [PATCH 17/31] PPC: e500: dt: create mpic node dynamically, Alexander Graf, 2012/06/05
- [Qemu-devel] [PATCH 19/31] PPC: e500: dt: create pci node dynamically, Alexander Graf, 2012/06/05
- [Qemu-devel] [PATCH 28/31] PPC: e500: Define addresses as always 64bit, Alexander Graf, 2012/06/05
- [Qemu-devel] [PATCH 20/31] PPC: e500: dt: start with empty device tree, Alexander Graf, 2012/06/05
- [Qemu-devel] [PATCH 29/31] PPC: e500: Extend address/size of / to 64bit, Alexander Graf, 2012/06/05
- [Qemu-devel] [PATCH 25/31] Revert "dt: temporarily disable subtree creation failure check", Alexander Graf, 2012/06/05
- [Qemu-devel] [PATCH 27/31] PPC: e500: Use new SOC dt format, Alexander Graf, 2012/06/05
- [Qemu-devel] [PATCH 02/31] dt: add helpers for 2, 3 and 4 cell adds,
Alexander Graf <=
- Re: [Qemu-devel] [PATCH 02/31] dt: add helpers for 2, 3 and 4 cell adds, Peter Crosthwaite, 2012/06/06
- Re: [Qemu-devel] [PATCH 02/31] dt: add helpers for 2, 3 and 4 cell adds, Alexander Graf, 2012/06/06
- Re: [Qemu-devel] [PATCH 02/31] dt: add helpers for 2, 3 and 4 cell adds, Scott Wood, 2012/06/06
- Re: [Qemu-devel] [Qemu-ppc] [PATCH 02/31] dt: add helpers for 2, 3 and 4 cell adds, David Gibson, 2012/06/06
- Re: [Qemu-devel] [Qemu-ppc] [PATCH 02/31] dt: add helpers for 2, 3 and 4 cell adds, Alexander Graf, 2012/06/07
- Re: [Qemu-devel] [Qemu-ppc] [PATCH 02/31] dt: add helpers for 2, 3 and 4 cell adds, David Gibson, 2012/06/07
- Re: [Qemu-devel] [Qemu-ppc] [PATCH 02/31] dt: add helpers for 2, 3 and 4 cell adds, Alexander Graf, 2012/06/08
- Re: [Qemu-devel] [Qemu-ppc] [PATCH 02/31] dt: add helpers for 2, 3 and 4 cell adds, David Gibson, 2012/06/08
[Qemu-devel] [PATCH 22/31] PPC: e500: dt: use 64bit cell helper, Alexander Graf, 2012/06/05
[Qemu-devel] [PATCH 18/31] PPC: e500: dt: create global-utils node dynamically, Alexander Graf, 2012/06/05