]> git.proxmox.com Git - qemu.git/commitdiff
Add to machine structure a flag to use SCSI drives instead of IDE: fixes SS-20
authorblueswir1 <blueswir1@c046a42c-6fe2-441c-8c8c-71466251a162>
Sun, 28 Sep 2008 18:55:17 +0000 (18:55 +0000)
committerblueswir1 <blueswir1@c046a42c-6fe2-441c-8c8c-71466251a162>
Sun, 28 Sep 2008 18:55:17 +0000 (18:55 +0000)
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5339 c046a42c-6fe2-441c-8c8c-71466251a162

hw/boards.h
hw/realview.c
hw/sun4m.c
hw/versatilepb.c
vl.c

index 6aa155db9898333be126989a27290c71abe7474d..119c2f60cd169a2fc984fec25f6e972dd6e616dd 100644 (file)
@@ -17,6 +17,7 @@ typedef struct QEMUMachine {
 #define RAMSIZE_FIXED  (1 << 0)
     ram_addr_t ram_require;
     int nodisk_ok;
+    int use_scsi;
     struct QEMUMachine *next;
 } QEMUMachine;
 
index 595e7ec8dc7ebf62f8a46c8e28ceb11363b43687..a9d20edc525520656210432e8c3ce1f3508f8c75 100644 (file)
@@ -197,8 +197,9 @@ static void realview_init(ram_addr_t ram_size, int vga_ram_size,
 }
 
 QEMUMachine realview_machine = {
-    "realview",
-    "ARM RealView Emulation Baseboard (ARM926EJ-S)",
-    realview_init,
-    0x1000
+    .name = "realview",
+    .desc = "ARM RealView Emulation Baseboard (ARM926EJ-S)",
+    .init = realview_init,
+    .ram_require = 0x1000,
+    .use_scsi = 1,
 };
index fcd0ace5e803079fcc22714bf9fbcc2d2b2615b9..c053ab014e54e799dc7abfa4cc206d8afc0e5dc8 100644 (file)
@@ -1292,6 +1292,7 @@ QEMUMachine ss5_machine = {
     .init = ss5_init,
     .ram_require = PROM_SIZE_MAX + TCX_SIZE,
     .nodisk_ok = 1,
+    .use_scsi = 1,
 };
 
 QEMUMachine ss10_machine = {
@@ -1300,6 +1301,7 @@ QEMUMachine ss10_machine = {
     .init = ss10_init,
     .ram_require = PROM_SIZE_MAX + TCX_SIZE,
     .nodisk_ok = 1,
+    .use_scsi = 1,
 };
 
 QEMUMachine ss600mp_machine = {
@@ -1308,6 +1310,7 @@ QEMUMachine ss600mp_machine = {
     .init = ss600mp_init,
     .ram_require = PROM_SIZE_MAX + TCX_SIZE,
     .nodisk_ok = 1,
+    .use_scsi = 1,
 };
 
 QEMUMachine ss20_machine = {
@@ -1316,6 +1319,7 @@ QEMUMachine ss20_machine = {
     .init = ss20_init,
     .ram_require = PROM_SIZE_MAX + TCX_SIZE,
     .nodisk_ok = 1,
+    .use_scsi = 1,
 };
 
 QEMUMachine ss2_machine = {
@@ -1324,6 +1328,7 @@ QEMUMachine ss2_machine = {
     .init = ss2_init,
     .ram_require = PROM_SIZE_MAX + TCX_SIZE,
     .nodisk_ok = 1,
+    .use_scsi = 1,
 };
 
 QEMUMachine voyager_machine = {
@@ -1332,6 +1337,7 @@ QEMUMachine voyager_machine = {
     .init = vger_init,
     .ram_require = PROM_SIZE_MAX + TCX_SIZE,
     .nodisk_ok = 1,
+    .use_scsi = 1,
 };
 
 QEMUMachine ss_lx_machine = {
@@ -1340,6 +1346,7 @@ QEMUMachine ss_lx_machine = {
     .init = ss_lx_init,
     .ram_require = PROM_SIZE_MAX + TCX_SIZE,
     .nodisk_ok = 1,
+    .use_scsi = 1,
 };
 
 QEMUMachine ss4_machine = {
@@ -1348,6 +1355,7 @@ QEMUMachine ss4_machine = {
     .init = ss4_init,
     .ram_require = PROM_SIZE_MAX + TCX_SIZE,
     .nodisk_ok = 1,
+    .use_scsi = 1,
 };
 
 QEMUMachine scls_machine = {
@@ -1356,6 +1364,7 @@ QEMUMachine scls_machine = {
     .init = scls_init,
     .ram_require = PROM_SIZE_MAX + TCX_SIZE,
     .nodisk_ok = 1,
+    .use_scsi = 1,
 };
 
 QEMUMachine sbook_machine = {
@@ -1364,6 +1373,7 @@ QEMUMachine sbook_machine = {
     .init = sbook_init,
     .ram_require = PROM_SIZE_MAX + TCX_SIZE,
     .nodisk_ok = 1,
+    .use_scsi = 1,
 };
 
 static const struct sun4d_hwdef sun4d_hwdefs[] = {
@@ -1611,6 +1621,7 @@ QEMUMachine ss1000_machine = {
     .init = ss1000_init,
     .ram_require = PROM_SIZE_MAX + TCX_SIZE,
     .nodisk_ok = 1,
+    .use_scsi = 1,
 };
 
 QEMUMachine ss2000_machine = {
@@ -1619,4 +1630,5 @@ QEMUMachine ss2000_machine = {
     .init = ss2000_init,
     .ram_require = PROM_SIZE_MAX + TCX_SIZE,
     .nodisk_ok = 1,
+    .use_scsi = 1,
 };
index bfbc0312a096712dfd1c69a2734837fc37e29926..f9e9988fc6a71ef784ac2270c5dc10c43ca6316b 100644 (file)
@@ -316,13 +316,15 @@ static void vab_init(ram_addr_t ram_size, int vga_ram_size,
 }
 
 QEMUMachine versatilepb_machine = {
-    "versatilepb",
-    "ARM Versatile/PB (ARM926EJ-S)",
-    vpb_init,
+    .name = "versatilepb",
+    .desc = "ARM Versatile/PB (ARM926EJ-S)",
+    .init = vpb_init,
+    .use_scsi = 1,
 };
 
 QEMUMachine versatileab_machine = {
-    "versatileab",
-    "ARM Versatile/AB (ARM926EJ-S)",
-    vab_init,
+    .name = "versatileab",
+    .desc = "ARM Versatile/AB (ARM926EJ-S)",
+    .init = vab_init,
+    .use_scsi = 1,
 };
diff --git a/vl.c b/vl.c
index eeefe592e52270d3342452d1ce1a8910e57e3d52..481eb93193002160bcd8fd22a74bae803531a142 100644 (file)
--- a/vl.c
+++ b/vl.c
@@ -5461,12 +5461,7 @@ static int drive_init(struct drive_opt *arg, int snapshot,
     index = -1;
     cache = 1;
 
-    if (!strcmp(machine->name, "realview") ||
-        !strcmp(machine->name, "SS-5") ||
-        !strcmp(machine->name, "SS-10") ||
-        !strcmp(machine->name, "SS-600MP") ||
-        !strcmp(machine->name, "versatilepb") ||
-        !strcmp(machine->name, "versatileab")) {
+    if (machine->use_scsi) {
         type = IF_SCSI;
         max_devs = MAX_SCSI_DEVS;
         pstrcpy(devname, sizeof(devname), "scsi");