qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [4997] Allow boot without a drive on Sparc machines ( partl


From: Blue Swirl
Subject: [Qemu-devel] [4997] Allow boot without a drive on Sparc machines ( partly extracted from Xen)
Date: Tue, 12 Aug 2008 15:58:35 +0000

Revision: 4997
          http://svn.sv.gnu.org/viewvc/?view=rev&root=qemu&revision=4997
Author:   blueswir1
Date:     2008-08-12 15:58:35 +0000 (Tue, 12 Aug 2008)

Log Message:
-----------
Allow boot without a drive on Sparc machines (partly extracted from Xen)

Modified Paths:
--------------
    trunk/hw/boards.h
    trunk/hw/sun4m.c
    trunk/hw/sun4u.c
    trunk/vl.c

Modified: trunk/hw/boards.h
===================================================================
--- trunk/hw/boards.h   2008-08-12 15:51:09 UTC (rev 4996)
+++ trunk/hw/boards.h   2008-08-12 15:58:35 UTC (rev 4997)
@@ -16,6 +16,7 @@
     QEMUMachineInitFunc *init;
 #define RAMSIZE_FIXED  (1 << 0)
     ram_addr_t ram_require;
+    int nodisk_ok;
     struct QEMUMachine *next;
 } QEMUMachine;
 

Modified: trunk/hw/sun4m.c
===================================================================
--- trunk/hw/sun4m.c    2008-08-12 15:51:09 UTC (rev 4996)
+++ trunk/hw/sun4m.c    2008-08-12 15:58:35 UTC (rev 4997)
@@ -1242,6 +1242,7 @@
     .desc = "Sun4m platform, SPARCstation 5",
     .init = ss5_init,
     .ram_require = PROM_SIZE_MAX + TCX_SIZE,
+    .nodisk_ok = 1,
 };
 
 QEMUMachine ss10_machine = {
@@ -1249,6 +1250,7 @@
     .desc = "Sun4m platform, SPARCstation 10",
     .init = ss10_init,
     .ram_require = PROM_SIZE_MAX + TCX_SIZE,
+    .nodisk_ok = 1,
 };
 
 QEMUMachine ss600mp_machine = {
@@ -1256,6 +1258,7 @@
     .desc = "Sun4m platform, SPARCserver 600MP",
     .init = ss600mp_init,
     .ram_require = PROM_SIZE_MAX + TCX_SIZE,
+    .nodisk_ok = 1,
 };
 
 QEMUMachine ss20_machine = {
@@ -1263,6 +1266,7 @@
     .desc = "Sun4m platform, SPARCstation 20",
     .init = ss20_init,
     .ram_require = PROM_SIZE_MAX + TCX_SIZE,
+    .nodisk_ok = 1,
 };
 
 QEMUMachine ss2_machine = {
@@ -1270,6 +1274,7 @@
     .desc = "Sun4c platform, SPARCstation 2",
     .init = ss2_init,
     .ram_require = PROM_SIZE_MAX + TCX_SIZE,
+    .nodisk_ok = 1,
 };
 
 QEMUMachine voyager_machine = {
@@ -1277,6 +1282,7 @@
     .desc = "Sun4m platform, SPARCstation Voyager",
     .init = vger_init,
     .ram_require = PROM_SIZE_MAX + TCX_SIZE,
+    .nodisk_ok = 1,
 };
 
 QEMUMachine ss_lx_machine = {
@@ -1284,6 +1290,7 @@
     .desc = "Sun4m platform, SPARCstation LX",
     .init = ss_lx_init,
     .ram_require = PROM_SIZE_MAX + TCX_SIZE,
+    .nodisk_ok = 1,
 };
 
 QEMUMachine ss4_machine = {
@@ -1291,6 +1298,7 @@
     .desc = "Sun4m platform, SPARCstation 4",
     .init = ss4_init,
     .ram_require = PROM_SIZE_MAX + TCX_SIZE,
+    .nodisk_ok = 1,
 };
 
 QEMUMachine scls_machine = {
@@ -1298,6 +1306,7 @@
     .desc = "Sun4m platform, SPARCClassic",
     .init = scls_init,
     .ram_require = PROM_SIZE_MAX + TCX_SIZE,
+    .nodisk_ok = 1,
 };
 
 QEMUMachine sbook_machine = {
@@ -1305,6 +1314,7 @@
     .desc = "Sun4m platform, SPARCbook",
     .init = sbook_init,
     .ram_require = PROM_SIZE_MAX + TCX_SIZE,
+    .nodisk_ok = 1,
 };
 
 static const struct sun4d_hwdef sun4d_hwdefs[] = {
@@ -1542,6 +1552,7 @@
     .desc = "Sun4d platform, SPARCserver 1000",
     .init = ss1000_init,
     .ram_require = PROM_SIZE_MAX + TCX_SIZE,
+    .nodisk_ok = 1,
 };
 
 QEMUMachine ss2000_machine = {
@@ -1549,4 +1560,5 @@
     .desc = "Sun4d platform, SPARCcenter 2000",
     .init = ss2000_init,
     .ram_require = PROM_SIZE_MAX + TCX_SIZE,
+    .nodisk_ok = 1,
 };

Modified: trunk/hw/sun4u.c
===================================================================
--- trunk/hw/sun4u.c    2008-08-12 15:51:09 UTC (rev 4996)
+++ trunk/hw/sun4u.c    2008-08-12 15:58:35 UTC (rev 4997)
@@ -450,6 +450,7 @@
     .desc = "Sun4u platform",
     .init = sun4u_init,
     .ram_require = PROM_SIZE_MAX + VGA_RAM_SIZE,
+    .nodisk_ok = 1,
 };
 
 QEMUMachine sun4v_machine = {
@@ -457,4 +458,5 @@
     .desc = "Sun4v platform",
     .init = sun4v_init,
     .ram_require = PROM_SIZE_MAX + VGA_RAM_SIZE,
+    .nodisk_ok = 1,
 };

Modified: trunk/vl.c
===================================================================
--- trunk/vl.c  2008-08-12 15:51:09 UTC (rev 4996)
+++ trunk/vl.c  2008-08-12 15:58:35 UTC (rev 4997)
@@ -8879,9 +8879,8 @@
     linux_boot = (kernel_filename != NULL);
     net_boot = (boot_devices_bitmap >> ('n' - 'a')) & 0xF;
 
-    /* XXX: this should not be: some embedded targets just have flash */
     if (!linux_boot && net_boot == 0 &&
-        nb_drives_opt == 0)
+        !machine->nodisk_ok && nb_drives_opt == 0)
         help(1);
 
     if (!linux_boot && *kernel_cmdline != '\0') {






reply via email to

[Prev in Thread] Current Thread [Next in Thread]