qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Alexander Graf <agraf@suse.de>
To: QEMU-devel Developers <qemu-devel@nongnu.org>
Cc: Kevin Wolf <kwolf@redhat.com>,
	Joerg Roedel <Joerg.Roedel@amd.com>,
	Gerd Hoffmann <kraxel@redhat.com>,
	Stefan Hajnoczi <stefanha@gmail.com>,
	tj@kernel.org, Roland Elek <elek.roland@gmail.com>,
	Sebastian Herbszt <herbszt@gmx.de>
Subject: [Qemu-devel] [PATCH 09/12] ahci: add -drive support
Date: Tue, 23 Nov 2010 15:34:46 +0100	[thread overview]
Message-ID: <1290522889-27559-10-git-send-email-agraf@suse.de> (raw)
In-Reply-To: <1290522889-27559-1-git-send-email-agraf@suse.de>

We need to be able to spawn new AHCI drives, so let's add AHCI support
to the -drive option.

Signed-off-by: Alexander Graf <agraf@suse.de>
---
 blockdev.c    |    6 +++++-
 blockdev.h    |    1 +
 qemu-common.h |    2 +-
 3 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/blockdev.c b/blockdev.c
index 6cb179a..5ce90cc 100644
--- a/blockdev.c
+++ b/blockdev.c
@@ -209,6 +209,9 @@ DriveInfo *drive_init(QemuOpts *opts, int default_to_scsi, int *fatal_error)
 	} else if (!strcmp(buf, "xen")) {
 	    type = IF_XEN;
             max_devs = 0;
+        } else if (!strcmp(buf, "sata")) {
+            type = IF_SATA;
+            max_devs = MAX_SATA_DEVS;
 	} else if (!strcmp(buf, "none")) {
 	    type = IF_NONE;
             max_devs = 0;
@@ -402,7 +405,7 @@ DriveInfo *drive_init(QemuOpts *opts, int default_to_scsi, int *fatal_error)
     } else {
         /* no id supplied -> create one */
         dinfo->id = qemu_mallocz(32);
-        if (type == IF_IDE || type == IF_SCSI)
+        if (type == IF_IDE || type == IF_SCSI || type == IF_SATA)
             mediastr = (media == MEDIA_CDROM) ? "-cd" : "-hd";
         if (max_devs)
             snprintf(dinfo->id, 32, "%s%i%s%i",
@@ -427,6 +430,7 @@ DriveInfo *drive_init(QemuOpts *opts, int default_to_scsi, int *fatal_error)
     case IF_IDE:
     case IF_SCSI:
     case IF_XEN:
+    case IF_SATA:
     case IF_NONE:
         switch(media) {
 	case MEDIA_DISK:
diff --git a/blockdev.h b/blockdev.h
index 653affc..f50a15e 100644
--- a/blockdev.h
+++ b/blockdev.h
@@ -33,6 +33,7 @@ struct DriveInfo {
 
 #define MAX_IDE_DEVS	2
 #define MAX_SCSI_DEVS	7
+#define MAX_SATA_DEVS   4
 
 DriveInfo *drive_get(BlockInterfaceType type, int bus, int unit);
 int drive_get_max_bus(BlockInterfaceType type);
diff --git a/qemu-common.h b/qemu-common.h
index b3957f1..ae1cfca 100644
--- a/qemu-common.h
+++ b/qemu-common.h
@@ -257,7 +257,7 @@ typedef uint64_t pcibus_t;
 typedef enum {
     IF_NONE,
     IF_IDE, IF_SCSI, IF_FLOPPY, IF_PFLASH, IF_MTD, IF_SD, IF_VIRTIO, IF_XEN,
-    IF_COUNT
+    IF_SATA, IF_COUNT
 } BlockInterfaceType;
 
 void cpu_exec_init_all(unsigned long tb_size);
-- 
1.6.0.2

  parent reply	other threads:[~2010-11-23 14:34 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-11-23 14:34 [Qemu-devel] [PATCH 00/12] AHCI emulation support v4 Alexander Graf
2010-11-23 14:34 ` [Qemu-devel] [PATCH 01/12] ide: split ide command interpretation off Alexander Graf
2010-11-23 14:34 ` [Qemu-devel] [PATCH 02/12] ide: fix whitespace gap in ide_exec_cmd Alexander Graf
2010-11-23 14:34 ` [Qemu-devel] [PATCH 03/12] ide: add support for ide bus ops Alexander Graf
2010-11-23 14:34 ` [Qemu-devel] [PATCH 04/12] ide: add DMA hooks to " Alexander Graf
2010-11-23 14:34 ` [Qemu-devel] [PATCH 05/12] ide: add ncq identify data for ahci sata drives Alexander Graf
2010-11-23 14:34 ` [Qemu-devel] [PATCH 06/12] pci: add storage class for sata Alexander Graf
2010-11-23 14:34 ` [Qemu-devel] [PATCH 07/12] pci: add ich7 pci id Alexander Graf
2010-11-23 14:34 ` [Qemu-devel] [PATCH 08/12] ahci: add ahci emulation Alexander Graf
2010-11-25 12:28   ` Paul Brook
2010-11-25 12:32     ` Alexander Graf
2010-11-25 12:45       ` Paul Brook
2010-11-25 12:47         ` Alexander Graf
2010-11-25 12:52           ` Paul Brook
2010-11-23 14:34 ` Alexander Graf [this message]
2010-11-23 14:34 ` [Qemu-devel] [PATCH 10/12] config: Add header file for device config options Alexander Graf
2010-11-23 19:21   ` Blue Swirl
2010-11-23 19:37     ` Alexander Graf
2010-11-24  2:22   ` [Qemu-devel] " Juan Quintela
2010-11-24 10:54     ` Alexander Graf
2010-11-24 20:45       ` Blue Swirl
2010-11-23 14:34 ` [Qemu-devel] [PATCH 11/12] ahci: spawn controller on demand Alexander Graf
2010-11-23 14:34 ` [Qemu-devel] [PATCH 12/12] ide: move pata specific parts to pata.c Alexander Graf
2010-11-24 11:44 ` [Qemu-devel] Re: [PATCH 00/12] AHCI emulation support v4 Gerd Hoffmann
2010-11-24 11:46   ` Alexander Graf
2010-12-01 23:29   ` Alexander Graf
2010-12-02 10:43     ` Gerd Hoffmann
2010-12-02 10:48       ` Alexander Graf

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=1290522889-27559-10-git-send-email-agraf@suse.de \
    --to=agraf@suse.de \
    --cc=Joerg.Roedel@amd.com \
    --cc=elek.roland@gmail.com \
    --cc=herbszt@gmx.de \
    --cc=kraxel@redhat.com \
    --cc=kwolf@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=stefanha@gmail.com \
    --cc=tj@kernel.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;
as well as URLs for NNTP newsgroup(s).