From: Mark Langsdorf <mark.langsdorf@calxeda.com>
To: kwolf@redhat.com, qemu-devel@nongnu.org, paul@codesourcery.com,
peter.maydell@linaro.org
Subject: [Qemu-devel] [PATCH 6/9] ahci: add support for non-PCI based controllers
Date: Tue, 20 Dec 2011 13:13:08 -0600 [thread overview]
Message-ID: <4EF0DE44.90602@calxeda.com> (raw)
From: Rob Herring <rob.herring@calxeda.com>
Add support for ahci on sysbus.
Signed-off-by: Rob Herring <rob.herring@calxeda.com>
Signed-off-by: Mark Langsdorf <mark.langsdorf@calxeda.com>
---
hw/ide/ahci.c | 35 +++++++++++++++++++++++++++++++++++
1 files changed, 35 insertions(+), 0 deletions(-)
diff --git a/hw/ide/ahci.c b/hw/ide/ahci.c
index 135d0ee..8b56509 100644
--- a/hw/ide/ahci.c
+++ b/hw/ide/ahci.c
@@ -25,6 +25,7 @@
#include <hw/msi.h>
#include <hw/pc.h>
#include <hw/pci.h>
+#include <hw/sysbus.h>
#include "monitor.h"
#include "dma.h"
@@ -1214,3 +1215,37 @@ void ahci_reset(void *opaque)
ahci_reset_port(s, i);
}
}
+
+typedef struct PlatAHCIState {
+ SysBusDevice busdev;
+ AHCIState ahci;
+} PlatAHCIState;
+
+static int plat_ahci_init(SysBusDevice *dev)
+{
+ PlatAHCIState *s = FROM_SYSBUS(PlatAHCIState, dev);
+ ahci_init(&s->ahci, &dev->qdev, 1);
+
+ sysbus_init_mmio(dev, &s->ahci.mem);
+ sysbus_init_irq(dev, &s->ahci.irq);
+
+ qemu_register_reset(ahci_reset, &s->ahci);
+ return 0;
+}
+
+static SysBusDeviceInfo plat_ahci_info[] = {
+ {
+ .qdev.name = "plat-ahci",
+ .qdev.size = sizeof(PlatAHCIState),
+ .init = plat_ahci_init,
+ },{
+ /* end of list */
+ }
+};
+
+static void plat_ahci_register(void)
+{
+ sysbus_register_withprop(plat_ahci_info);
+}
+device_init(plat_ahci_register);
+
--
1.7.5.4
next reply other threads:[~2011-12-20 19:13 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-12-20 19:13 Mark Langsdorf [this message]
-- strict thread matches above, loose matches on Subject: below --
2011-12-22 18:20 [Qemu-devel] [PATCH v2 0/9] various ARM fixes Mark Langsdorf
2011-12-22 18:20 ` [Qemu-devel] [PATCH 6/9] ahci: add support for non-PCI based controllers Mark Langsdorf
2011-12-24 0:39 ` Peter Maydell
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=4EF0DE44.90602@calxeda.com \
--to=mark.langsdorf@calxeda.com \
--cc=kwolf@redhat.com \
--cc=paul@codesourcery.com \
--cc=peter.maydell@linaro.org \
--cc=qemu-devel@nongnu.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.