From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:33078) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RioNs-0006RM-U4 for qemu-devel@nongnu.org; Thu, 05 Jan 2012 09:33:46 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1RioNm-000511-V0 for qemu-devel@nongnu.org; Thu, 05 Jan 2012 09:33:36 -0500 Received: from cantor2.suse.de ([195.135.220.15]:39596 helo=mx2.suse.de) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RioNm-00050w-Lv for qemu-devel@nongnu.org; Thu, 05 Jan 2012 09:33:30 -0500 Message-ID: <4F05B461.5010608@suse.de> Date: Thu, 05 Jan 2012 15:32:01 +0100 From: =?ISO-8859-1?Q?Andreas_F=E4rber?= MIME-Version: 1.0 References: <1325771559-15570-1-git-send-email-mark.langsdorf@calxeda.com> <1325771559-15570-2-git-send-email-mark.langsdorf@calxeda.com> <4F05B0AC.8010301@suse.de> <7951BE1F-70F8-494D-A746-6122D59A1DE8@suse.de> In-Reply-To: <7951BE1F-70F8-494D-A746-6122D59A1DE8@suse.de> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Subject: Re: [Qemu-devel] [PATCH v3 2/2] ahci: add support for non-PCI based controllers List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Alexander Graf , Mark Langsdorf Cc: kwolf@redhat.com, peter.maydell@linaro.org, qemu-devel@nongnu.org, Rob Herring Am 05.01.2012 15:26, schrieb Alexander Graf: >=20 > On 05.01.2012, at 15:16, Andreas F=E4rber wrote: >=20 >> Am 05.01.2012 14:52, schrieb Mark Langsdorf: >>> From: Rob Herring >>> >>> Add support for ahci on sysbus. >>> >>> Signed-off-by: Rob Herring >>> Signed-off-by: Mark Langsdorf >>> --- >>> Changes from v1, v2 >>> Corrected indentation of PlatAHCIState members >>> Made plat_ahci_info into a single structure, not a list >>> >>> hw/ide/ahci.c | 31 +++++++++++++++++++++++++++++++ >>> 1 files changed, 31 insertions(+), 0 deletions(-) >>> >>> diff --git a/hw/ide/ahci.c b/hw/ide/ahci.c >>> index 135d0ee..f052e55 100644 >>> --- a/hw/ide/ahci.c >>> +++ b/hw/ide/ahci.c >>> @@ -25,6 +25,7 @@ >>> #include >>> #include >>> #include >>> +#include >>> >>> #include "monitor.h" >>> #include "dma.h" >>> @@ -1214,3 +1215,33 @@ 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 =3D 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); >=20 > It's still unclear to me how you connect an irq line on the command lin= e. How do you instantiate this device? I thought, with qdev that's not possible at all. >>> + >>> + qemu_register_reset(ahci_reset, &s->ahci); >>> + return 0; >>> +} >>> + >>> +static SysBusDeviceInfo plat_ahci_info =3D { >>> + .qdev.name =3D "plat-ahci", >> >> The commit message does not given an indication where "plat" comes fro= m >> - is that an ARM device name? >=20 > "plat" here means "platform device". I'm not sure I like the naming tho= ugh. Basically it's a sysbus version of AHCI, similar to how virtio-mmio = is a sysbus version of virtio. >=20 > How about "sysbus-ahci"? Yeah, sounds better to me. > However the question still stands: Have you verified this code works? I believe that one's addressed to Mark. ;) Andreas --=20 SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 N=FCrnberg, Germany GF: Jeff Hawn, Jennifer Guild, Felix Imend=F6rffer; HRB 16746 AG N=FCrnbe= rg