Devicetree
 help / color / mirror / Atom feed
From: Grant Likely <grant.likely-s3s/WqlpOiPyB63q8FvJNQ@public.gmane.org>
To: qemu-devel-qX2TKyscuCcdnm+yROfE0A@public.gmane.org,
	devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ@public.gmane.org,
	jeremy.kerr-Z7WLFzj8eWMS+FvcfC7Uqw@public.gmane.org
Subject: [RFC PATCH 6/7] devicetree: Add fdt_populate hook to pl011 device
Date: Tue, 06 Apr 2010 22:10:28 -0600	[thread overview]
Message-ID: <20100407041028.20274.67952.stgit@angua> (raw)
In-Reply-To: <20100407040129.20274.44284.stgit@angua>

Signed-off-by: Grant Likely <grant.likely-s3s/WqlpOiPyB63q8FvJNQ@public.gmane.org>
---

 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)

  parent reply	other threads:[~2010-04-07  4:10 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-04-07  4:09 [RFC PATCH 0/7] QEMU patches to generate FDT from qdevs Grant Likely
2010-04-07  4:10 ` [RFC PATCH 1/7] devicetree: Add 8k instead of double dtb size when reserving extra memory Grant Likely
2010-04-09 12:00   ` [Qemu-devel] " Paul Brook
     [not found]     ` <201004091300.57740.paul-qD8j1LwMmJjtCj0u4l0SBw@public.gmane.org>
2010-04-09 14:55       ` Grant Likely
2010-04-07  4:10 ` [RFC PATCH 2/7] devicetree: auto-populate the device tree with qdev data Grant Likely
2010-04-07  4:10 ` [RFC PATCH 3/7] devicetree: add helper for determining IRQ properties in the device tree Grant Likely
2010-04-07  4:10 ` [RFC PATCH 4/7] devicetree: Add sysbus fdt populate hooks Grant Likely
2010-04-07  4:10 ` [RFC PATCH 5/7] devicetree: Add helper to register devices with an fdt_populate hook Grant Likely
2010-04-07  4:10 ` Grant Likely [this message]
2010-04-07  4:10 ` [RFC PATCH 7/7] devicetree: Add fdt_populate hook to smc91x device Grant Likely
2010-04-07  7:01 ` [RFC PATCH 0/7] QEMU patches to generate FDT from qdevs Jeremy Kerr
     [not found]   ` <201004071501.34711.jeremy.kerr-Z7WLFzj8eWMS+FvcfC7Uqw@public.gmane.org>
2010-04-07 20:58     ` Grant Likely
2010-04-07 19:10 ` [Qemu-devel] " Blue Swirl
     [not found]   ` <k2kf43fc5581004071210v810be251nf77b7ab469004e5c-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2010-04-07 20:57     ` Grant Likely
2010-04-09 12:07 ` Paul Brook
     [not found]   ` <201004091307.22473.paul-qD8j1LwMmJjtCj0u4l0SBw@public.gmane.org>
2010-04-09 14:47     ` Grant Likely
     [not found]       ` <h2ofa686aa41004090747w2422cedasb6f4b51633637816-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2010-04-09 15:57         ` Paul Brook
     [not found]           ` <201004091657.10684.paul-qD8j1LwMmJjtCj0u4l0SBw@public.gmane.org>
2010-04-09 16:35             ` Grant Likely

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20100407041028.20274.67952.stgit@angua \
    --to=grant.likely-s3s/wqlpoipyb63q8fvjnq@public.gmane.org \
    --cc=devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ@public.gmane.org \
    --cc=jeremy.kerr-Z7WLFzj8eWMS+FvcfC7Uqw@public.gmane.org \
    --cc=qemu-devel-qX2TKyscuCcdnm+yROfE0A@public.gmane.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox