[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [RFC PATCH 6/7] devicetree: Add fdt_populate hook to pl011
From: |
Grant Likely |
Subject: |
[Qemu-devel] [RFC PATCH 6/7] devicetree: Add fdt_populate hook to pl011 device |
Date: |
Tue, 06 Apr 2010 22:10:28 -0600 |
User-agent: |
StGIT/0.14.2 |
Signed-off-by: Grant Likely <address@hidden>
---
hw/pl011.c | 29 +++++++++++++++++++++++++----
1 files changed, 25 insertions(+), 4 deletions(-)
diff --git a/hw/pl011.c b/hw/pl011.c
index 81de91e..efc06d2 100644
--- a/hw/pl011.c
+++ b/hw/pl011.c
@@ -286,6 +286,27 @@ static int pl011_load(QEMUFile *f, void *opaque, int
version_id)
return 0;
}
+#ifdef CONFIG_FDT
+#include <libfdt.h>
+static int pl011_fdt_populate(SysBusDevice *dev, void *fdt, int offset)
+{
+ pl011_state *s = FROM_SYSBUS(pl011_state, dev);
+ int rc;
+
+ rc = fdt_setprop_string(fdt, offset, "compatible", "arm,amba-device");
+ if (rc < 0)
+ return rc;
+
+ rc = fdt_setprop(fdt, offset, "arm,amba-deviceid", s->id, sizeof(s->id));
+ if (rc < 0)
+ return rc;
+
+ return 0;
+}
+#else
+#define pl011_fdt_populate NULL
+#endif
+
static int pl011_init(SysBusDevice *dev, const unsigned char *id)
{
int iomemtype;
@@ -322,10 +343,10 @@ static int pl011_init_luminary(SysBusDevice *dev)
static void pl011_register_devices(void)
{
- sysbus_register_dev("pl011", sizeof(pl011_state),
- pl011_init_arm);
- sysbus_register_dev("pl011_luminary", sizeof(pl011_state),
- pl011_init_luminary);
+ sysbus_register_dev_fdt("pl011", sizeof(pl011_state),
+ pl011_init_arm, pl011_fdt_populate);
+ sysbus_register_dev_fdt("pl011_luminary", sizeof(pl011_state),
+ pl011_init_luminary, pl011_fdt_populate);
}
device_init(pl011_register_devices)
- [Qemu-devel] [RFC PATCH 0/7] QEMU patches to generate FDT from qdevs, Grant Likely, 2010/04/07
- [Qemu-devel] [RFC PATCH 1/7] devicetree: Add 8k instead of double dtb size when reserving extra memory, Grant Likely, 2010/04/07
- [Qemu-devel] [RFC PATCH 2/7] devicetree: auto-populate the device tree with qdev data, Grant Likely, 2010/04/07
- [Qemu-devel] [RFC PATCH 3/7] devicetree: add helper for determining IRQ properties in the device tree, Grant Likely, 2010/04/07
- [Qemu-devel] [RFC PATCH 4/7] devicetree: Add sysbus fdt populate hooks., Grant Likely, 2010/04/07
- [Qemu-devel] [RFC PATCH 5/7] devicetree: Add helper to register devices with an fdt_populate hook, Grant Likely, 2010/04/07
- [Qemu-devel] [RFC PATCH 6/7] devicetree: Add fdt_populate hook to pl011 device,
Grant Likely <=
- [Qemu-devel] [RFC PATCH 7/7] devicetree: Add fdt_populate hook to smc91x device, Grant Likely, 2010/04/07
- [Qemu-devel] Re: [RFC PATCH 0/7] QEMU patches to generate FDT from qdevs, Jeremy Kerr, 2010/04/07
- Re: [Qemu-devel] [RFC PATCH 0/7] QEMU patches to generate FDT from qdevs, Blue Swirl, 2010/04/07
- Re: [Qemu-devel] [RFC PATCH 0/7] QEMU patches to generate FDT from qdevs, Paul Brook, 2010/04/09