aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAvik Sil <aviksil@linux.vnet.ibm.com>2013-01-08 12:36:30 +0530
committerAnthony Liguori <aliguori@us.ibm.com>2013-01-15 18:26:18 -0600
commite4ada29e909787f629626660b1561f6a680187d3 (patch)
tree181d40aa8774f4c0bd2f109cdfbdf59c9b3ca23d
parent038794cfe1c0eece8968418077e4af601acd5aff (diff)
downloadqemu-e4ada29e909787f629626660b1561f6a680187d3.zip
qemu-e4ada29e909787f629626660b1561f6a680187d3.tar.gz
qemu-e4ada29e909787f629626660b1561f6a680187d3.tar.bz2
Make default boot order machine specific
This patch makes default boot order machine specific instead of set globally. The default boot order can be set per machine in QEMUMachine boot_order. This also allows a machine to receive a NULL boot order when -boot isn't used and take an appropriate action accordingly. This helps machine boots from the devices as set in guest's non-volatile memory location in case no boot order is provided by the user. Reviewed-by: Anthony Liguori <aliguori@us.ibm.com> Signed-off-by: Avik Sil <aviksil@linux.vnet.ibm.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
-rw-r--r--hw/alpha_dp264.c1
-rw-r--r--hw/an5206.c1
-rw-r--r--hw/axis_dev88.c1
-rw-r--r--hw/boards.h4
-rw-r--r--hw/collie.c1
-rw-r--r--hw/dummy_m68k.c1
-rw-r--r--hw/exynos4_boards.c2
-rw-r--r--hw/gumstix.c2
-rw-r--r--hw/highbank.c1
-rw-r--r--hw/integratorcp.c1
-rw-r--r--hw/kzm.c1
-rw-r--r--hw/leon3.c1
-rw-r--r--hw/lm32_boards.c6
-rw-r--r--hw/mainstone.c1
-rw-r--r--hw/mcf5208.c1
-rw-r--r--hw/milkymist.c3
-rw-r--r--hw/mips_fulong2e.c1
-rw-r--r--hw/mips_jazz.c2
-rw-r--r--hw/mips_malta.c1
-rw-r--r--hw/mips_mipssim.c1
-rw-r--r--hw/mips_r4k.c1
-rw-r--r--hw/musicpal.c1
-rw-r--r--hw/nseries.c2
-rw-r--r--hw/null-machine.c1
-rw-r--r--hw/omap_sx1.c2
-rw-r--r--hw/openrisc_sim.c1
-rw-r--r--hw/palm.c1
-rw-r--r--hw/pc_piix.c13
-rw-r--r--hw/petalogix_ml605_mmu.c3
-rw-r--r--hw/petalogix_s3adsp1800_mmu.c3
-rw-r--r--hw/ppc/e500plat.c1
-rw-r--r--hw/ppc/mpc8544ds.c1
-rw-r--r--hw/ppc405_boards.c1
-rw-r--r--hw/ppc440_bamboo.c1
-rw-r--r--hw/ppc_newworld.c1
-rw-r--r--hw/ppc_oldworld.c1
-rw-r--r--hw/ppc_prep.c1
-rw-r--r--hw/puv3.c1
-rw-r--r--hw/r2d.c1
-rw-r--r--hw/realview.c4
-rw-r--r--hw/s390-virtio.c1
-rw-r--r--hw/shix.c1
-rw-r--r--hw/spapr.c1
-rw-r--r--hw/spitz.c4
-rw-r--r--hw/stellaris.c2
-rw-r--r--hw/sun4m.c12
-rw-r--r--hw/sun4u.c3
-rw-r--r--hw/tosa.c1
-rw-r--r--hw/versatilepb.c2
-rw-r--r--hw/vexpress.c2
-rw-r--r--hw/virtex_ml507.c1
-rw-r--r--hw/xen_machine_pv.c1
-rw-r--r--hw/xilinx_zynq.c3
-rw-r--r--hw/xtensa_lx60.c2
-rw-r--r--hw/xtensa_sim.c1
-rw-r--r--hw/z2.c1
-rw-r--r--vl.c6
57 files changed, 110 insertions, 8 deletions
diff --git a/hw/alpha_dp264.c b/hw/alpha_dp264.c
index e2980e9..1cd549c 100644
--- a/hw/alpha_dp264.c
+++ b/hw/alpha_dp264.c
@@ -171,6 +171,7 @@ static QEMUMachine clipper_machine = {
.init = clipper_init,
.max_cpus = 4,
.is_default = 1,
+ DEFAULT_MACHINE_OPTIONS,
};
static void clipper_machine_init(void)
diff --git a/hw/an5206.c b/hw/an5206.c
index dcfe34b..750115a 100644
--- a/hw/an5206.c
+++ b/hw/an5206.c
@@ -86,6 +86,7 @@ static QEMUMachine an5206_machine = {
.name = "an5206",
.desc = "Arnewsh 5206",
.init = an5206_init,
+ DEFAULT_MACHINE_OPTIONS,
};
static void an5206_machine_init(void)
diff --git a/hw/axis_dev88.c b/hw/axis_dev88.c
index 2ca606b..9418981 100644
--- a/hw/axis_dev88.c
+++ b/hw/axis_dev88.c
@@ -355,6 +355,7 @@ static QEMUMachine axisdev88_machine = {
.desc = "AXIS devboard 88",
.init = axisdev88_init,
.is_default = 1,
+ DEFAULT_MACHINE_OPTIONS,
};
static void axisdev88_machine_init(void)
diff --git a/hw/boards.h b/hw/boards.h
index 4540e95..3ff9665 100644
--- a/hw/boards.h
+++ b/hw/boards.h
@@ -6,6 +6,9 @@
#include "sysemu/blockdev.h"
#include "qdev.h"
+#define DEFAULT_MACHINE_OPTIONS \
+ .boot_order = "cad"
+
typedef struct QEMUMachineInitArgs {
ram_addr_t ram_size;
const char *boot_device;
@@ -35,6 +38,7 @@ typedef struct QEMUMachine {
no_sdcard:1;
int is_default;
const char *default_machine_opts;
+ const char *boot_order;
GlobalProperty *compat_props;
struct QEMUMachine *next;
const char *hw_version;
diff --git a/hw/collie.c b/hw/collie.c
index 804d61a..d19db59 100644
--- a/hw/collie.c
+++ b/hw/collie.c
@@ -62,6 +62,7 @@ static QEMUMachine collie_machine = {
.name = "collie",
.desc = "Collie PDA (SA-1110)",
.init = collie_init,
+ DEFAULT_MACHINE_OPTIONS,
};
static void collie_machine_init(void)
diff --git a/hw/dummy_m68k.c b/hw/dummy_m68k.c
index 7878cc3..3a88805 100644
--- a/hw/dummy_m68k.c
+++ b/hw/dummy_m68k.c
@@ -73,6 +73,7 @@ static QEMUMachine dummy_m68k_machine = {
.name = "dummy",
.desc = "Dummy board",
.init = dummy_m68k_init,
+ DEFAULT_MACHINE_OPTIONS,
};
static void dummy_m68k_machine_init(void)
diff --git a/hw/exynos4_boards.c b/hw/exynos4_boards.c
index b267968..968bcc3 100644
--- a/hw/exynos4_boards.c
+++ b/hw/exynos4_boards.c
@@ -150,12 +150,14 @@ static QEMUMachine exynos4_machines[EXYNOS4_NUM_OF_BOARDS] = {
.desc = "Samsung NURI board (Exynos4210)",
.init = nuri_init,
.max_cpus = EXYNOS4210_NCPUS,
+ DEFAULT_MACHINE_OPTIONS,
},
[EXYNOS4_BOARD_SMDKC210] = {
.name = "smdkc210",
.desc = "Samsung SMDKC210 board (Exynos4210)",
.init = smdkc210_init,
.max_cpus = EXYNOS4210_NCPUS,
+ DEFAULT_MACHINE_OPTIONS,
},
};
diff --git a/hw/gumstix.c b/hw/gumstix.c
index 6fb0683..bea1605 100644
--- a/hw/gumstix.c
+++ b/hw/gumstix.c
@@ -122,12 +122,14 @@ static QEMUMachine connex_machine = {
.name = "connex",
.desc = "Gumstix Connex (PXA255)",
.init = connex_init,
+ DEFAULT_MACHINE_OPTIONS,
};
static QEMUMachine verdex_machine = {
.name = "verdex",
.desc = "Gumstix Verdex (PXA270)",
.init = verdex_init,
+ DEFAULT_MACHINE_OPTIONS,
};
static void gumstix_machine_init(void)
diff --git a/hw/highbank.c b/hw/highbank.c
index 98deca8..7bc6b44 100644
--- a/hw/highbank.c
+++ b/hw/highbank.c
@@ -331,6 +331,7 @@ static QEMUMachine highbank_machine = {
.init = highbank_init,
.block_default_type = IF_SCSI,
.max_cpus = 4,
+ DEFAULT_MACHINE_OPTIONS,
};
static void highbank_machine_init(void)
diff --git a/hw/integratorcp.c b/hw/integratorcp.c
index 6c824dc..9e3630a 100644
--- a/hw/integratorcp.c
+++ b/hw/integratorcp.c
@@ -512,6 +512,7 @@ static QEMUMachine integratorcp_machine = {
.desc = "ARM Integrator/CP (ARM926EJ-S)",
.init = integratorcp_init,
.is_default = 1,
+ DEFAULT_MACHINE_OPTIONS,
};
static void integratorcp_machine_init(void)
diff --git a/hw/kzm.c b/hw/kzm.c
index fd00af9..fb33165 100644
--- a/hw/kzm.c
+++ b/hw/kzm.c
@@ -146,6 +146,7 @@ static QEMUMachine kzm_machine = {
.name = "kzm",
.desc = "ARM KZM Emulation Baseboard (ARM1136)",
.init = kzm_init,
+ DEFAULT_MACHINE_OPTIONS,
};
static void kzm_machine_init(void)
diff --git a/hw/leon3.c b/hw/leon3.c
index 79b3a41..f16a8bb 100644
--- a/hw/leon3.c
+++ b/hw/leon3.c
@@ -212,6 +212,7 @@ static QEMUMachine leon3_generic_machine = {
.name = "leon3_generic",
.desc = "Leon-3 generic",
.init = leon3_generic_hw_init,
+ DEFAULT_MACHINE_OPTIONS,
};
static void leon3_machine_init(void)
diff --git a/hw/lm32_boards.c b/hw/lm32_boards.c
index 42e8b6b..2bc06d7 100644
--- a/hw/lm32_boards.c
+++ b/hw/lm32_boards.c
@@ -287,14 +287,16 @@ static QEMUMachine lm32_evr_machine = {
.name = "lm32-evr",
.desc = "LatticeMico32 EVR32 eval system",
.init = lm32_evr_init,
- .is_default = 1
+ .is_default = 1,
+ DEFAULT_MACHINE_OPTIONS,
};
static QEMUMachine lm32_uclinux_machine = {
.name = "lm32-uclinux",
.desc = "lm32 platform for uClinux and u-boot by Theobroma Systems",
.init = lm32_uclinux_init,
- .is_default = 0
+ .is_default = 0,
+ DEFAULT_MACHINE_OPTIONS,
};
static void lm32_machine_init(void)
diff --git a/hw/mainstone.c b/hw/mainstone.c
index a5ddbef..d1ff6e7 100644
--- a/hw/mainstone.c
+++ b/hw/mainstone.c
@@ -179,6 +179,7 @@ static QEMUMachine mainstone2_machine = {
.name = "mainstone",
.desc = "Mainstone II (PXA27x)",
.init = mainstone_init,
+ DEFAULT_MACHINE_OPTIONS,
};
static void mainstone_machine_init(void)
diff --git a/hw/mcf5208.c b/hw/mcf5208.c
index c1816cc..2c9a5dc 100644
--- a/hw/mcf5208.c
+++ b/hw/mcf5208.c
@@ -292,6 +292,7 @@ static QEMUMachine mcf5208evb_machine = {
.desc = "MCF5206EVB",
.init = mcf5208evb_init,
.is_default = 1,
+ DEFAULT_MACHINE_OPTIONS,
};
static void mcf5208evb_machine_init(void)
diff --git a/hw/milkymist.c b/hw/milkymist.c
index 0c23b67..c04eb35 100644
--- a/hw/milkymist.c
+++ b/hw/milkymist.c
@@ -206,7 +206,8 @@ static QEMUMachine milkymist_machine = {
.name = "milkymist",
.desc = "Milkymist One",
.init = milkymist_init,
- .is_default = 0
+ .is_default = 0,
+ DEFAULT_MACHINE_OPTIONS,
};
static void milkymist_machine_init(void)
diff --git a/hw/mips_fulong2e.c b/hw/mips_fulong2e.c
index 4d8ee8c..8b532e1 100644
--- a/hw/mips_fulong2e.c
+++ b/hw/mips_fulong2e.c
@@ -400,6 +400,7 @@ static QEMUMachine mips_fulong2e_machine = {
.name = "fulong2e",
.desc = "Fulong 2e mini pc",
.init = mips_fulong2e_init,
+ DEFAULT_MACHINE_OPTIONS,
};
static void mips_fulong2e_machine_init(void)
diff --git a/hw/mips_jazz.c b/hw/mips_jazz.c
index 63df2a7..72f70ca 100644
--- a/hw/mips_jazz.c
+++ b/hw/mips_jazz.c
@@ -325,6 +325,7 @@ static QEMUMachine mips_magnum_machine = {
.desc = "MIPS Magnum",
.init = mips_magnum_init,
.block_default_type = IF_SCSI,
+ DEFAULT_MACHINE_OPTIONS,
};
static QEMUMachine mips_pica61_machine = {
@@ -332,6 +333,7 @@ static QEMUMachine mips_pica61_machine = {
.desc = "Acer Pica 61",
.init = mips_pica61_init,
.block_default_type = IF_SCSI,
+ DEFAULT_MACHINE_OPTIONS,
};
static void mips_jazz_machine_init(void)
diff --git a/hw/mips_malta.c b/hw/mips_malta.c
index 771d125..2a150df 100644
--- a/hw/mips_malta.c
+++ b/hw/mips_malta.c
@@ -1020,6 +1020,7 @@ static QEMUMachine mips_malta_machine = {
.init = mips_malta_init,
.max_cpus = 16,
.is_default = 1,
+ DEFAULT_MACHINE_OPTIONS,
};
static void mips_malta_register_types(void)
diff --git a/hw/mips_mipssim.c b/hw/mips_mipssim.c
index 67066c0..8fd6692 100644
--- a/hw/mips_mipssim.c
+++ b/hw/mips_mipssim.c
@@ -229,6 +229,7 @@ static QEMUMachine mips_mipssim_machine = {
.name = "mipssim",
.desc = "MIPS MIPSsim platform",
.init = mips_mipssim_init,
+ DEFAULT_MACHINE_OPTIONS,
};
static void mips_mipssim_machine_init(void)
diff --git a/hw/mips_r4k.c b/hw/mips_r4k.c
index 59c43e5..5df7eb4 100644
--- a/hw/mips_r4k.c
+++ b/hw/mips_r4k.c
@@ -302,6 +302,7 @@ static QEMUMachine mips_machine = {
.name = "mips",
.desc = "mips r4k platform",
.init = mips_r4k_init,
+ DEFAULT_MACHINE_OPTIONS,
};
static void mips_machine_init(void)
diff --git a/hw/musicpal.c b/hw/musicpal.c
index 24a1722..035865f 100644
--- a/hw/musicpal.c
+++ b/hw/musicpal.c
@@ -1658,6 +1658,7 @@ static QEMUMachine musicpal_machine = {
.name = "musicpal",
.desc = "Marvell 88w8618 / MusicPal (ARM926EJ-S)",
.init = musicpal_init,
+ DEFAULT_MACHINE_OPTIONS,
};
static void musicpal_machine_init(void)
diff --git a/hw/nseries.c b/hw/nseries.c
index d96b750..6b717cf 100644
--- a/hw/nseries.c
+++ b/hw/nseries.c
@@ -1411,12 +1411,14 @@ static QEMUMachine n800_machine = {
.name = "n800",
.desc = "Nokia N800 tablet aka. RX-34 (OMAP2420)",
.init = n800_init,
+ DEFAULT_MACHINE_OPTIONS,
};
static QEMUMachine n810_machine = {
.name = "n810",
.desc = "Nokia N810 tablet aka. RX-44 (OMAP2420)",
.init = n810_init,
+ DEFAULT_MACHINE_OPTIONS,
};
static void nseries_machine_init(void)
diff --git a/hw/null-machine.c b/hw/null-machine.c
index d813c08..bdf109f 100644
--- a/hw/null-machine.c
+++ b/hw/null-machine.c
@@ -24,6 +24,7 @@ static QEMUMachine machine_none = {
.desc = "empty machine",
.init = machine_none_init,
.max_cpus = 0,
+ DEFAULT_MACHINE_OPTIONS,
};
static void register_machines(void)
diff --git a/hw/omap_sx1.c b/hw/omap_sx1.c
index 0f03121..30998c5 100644
--- a/hw/omap_sx1.c
+++ b/hw/omap_sx1.c
@@ -219,12 +219,14 @@ static QEMUMachine sx1_machine_v2 = {
.name = "sx1",
.desc = "Siemens SX1 (OMAP310) V2",
.init = sx1_init_v2,
+ DEFAULT_MACHINE_OPTIONS,
};
static QEMUMachine sx1_machine_v1 = {
.name = "sx1-v1",
.desc = "Siemens SX1 (OMAP310) V1",
.init = sx1_init_v1,
+ DEFAULT_MACHINE_OPTIONS,
};
static void sx1_machine_init(void)
diff --git a/hw/openrisc_sim.c b/hw/openrisc_sim.c
index d2b2379..fb47cdc 100644
--- a/hw/openrisc_sim.c
+++ b/hw/openrisc_sim.c
@@ -139,6 +139,7 @@ static QEMUMachine openrisc_sim_machine = {
.init = openrisc_sim_init,
.max_cpus = 1,
.is_default = 1,
+ DEFAULT_MACHINE_OPTIONS,
};
static void openrisc_sim_machine_init(void)
diff --git a/hw/palm.c b/hw/palm.c
index 5219e37..a633dfc 100644
--- a/hw/palm.c
+++ b/hw/palm.c
@@ -280,6 +280,7 @@ static QEMUMachine palmte_machine = {
.name = "cheetah",
.desc = "Palm Tungsten|E aka. Cheetah PDA (OMAP310)",
.init = palmte_init,
+ DEFAULT_MACHINE_OPTIONS,
};
static void palmte_machine_init(void)
diff --git a/hw/pc_piix.c b/hw/pc_piix.c
index e630aea..0a6923d 100644
--- a/hw/pc_piix.c
+++ b/hw/pc_piix.c
@@ -289,6 +289,7 @@ static QEMUMachine pc_i440fx_machine_v1_4 = {
.init = pc_init_pci_1_3,
.max_cpus = 255,
.is_default = 1,
+ DEFAULT_MACHINE_OPTIONS,
};
#define PC_COMPAT_1_3 \
@@ -307,6 +308,7 @@ static QEMUMachine pc_machine_v1_3 = {
PC_COMPAT_1_3,
{ /* end of list */ }
},
+ DEFAULT_MACHINE_OPTIONS,
};
#define PC_COMPAT_1_2 \
@@ -346,6 +348,7 @@ static QEMUMachine pc_machine_v1_2 = {
PC_COMPAT_1_2,
{ /* end of list */ }
},
+ DEFAULT_MACHINE_OPTIONS,
};
#define PC_COMPAT_1_1 \
@@ -389,6 +392,7 @@ static QEMUMachine pc_machine_v1_1 = {
PC_COMPAT_1_1,
{ /* end of list */ }
},
+ DEFAULT_MACHINE_OPTIONS,
};
#define PC_COMPAT_1_0 \
@@ -425,6 +429,7 @@ static QEMUMachine pc_machine_v1_0 = {
{ /* end of list */ }
},
.hw_version = "1.0",
+ DEFAULT_MACHINE_OPTIONS,
};
#define PC_COMPAT_0_15 \
@@ -440,6 +445,7 @@ static QEMUMachine pc_machine_v0_15 = {
{ /* end of list */ }
},
.hw_version = "0.15",
+ DEFAULT_MACHINE_OPTIONS,
};
#define PC_COMPAT_0_14 \
@@ -481,6 +487,7 @@ static QEMUMachine pc_machine_v0_14 = {
{ /* end of list */ }
},
.hw_version = "0.14",
+ DEFAULT_MACHINE_OPTIONS,
};
#define PC_COMPAT_0_13 \
@@ -518,6 +525,7 @@ static QEMUMachine pc_machine_v0_13 = {
{ /* end of list */ }
},
.hw_version = "0.13",
+ DEFAULT_MACHINE_OPTIONS,
};
#define PC_COMPAT_0_12 \
@@ -551,6 +559,7 @@ static QEMUMachine pc_machine_v0_12 = {
{ /* end of list */ }
},
.hw_version = "0.12",
+ DEFAULT_MACHINE_OPTIONS,
};
#define PC_COMPAT_0_11 \
@@ -584,6 +593,7 @@ static QEMUMachine pc_machine_v0_11 = {
{ /* end of list */ }
},
.hw_version = "0.11",
+ DEFAULT_MACHINE_OPTIONS,
};
static QEMUMachine pc_machine_v0_10 = {
@@ -617,6 +627,7 @@ static QEMUMachine pc_machine_v0_10 = {
{ /* end of list */ }
},
.hw_version = "0.10",
+ DEFAULT_MACHINE_OPTIONS,
};
static QEMUMachine isapc_machine = {
@@ -632,6 +643,7 @@ static QEMUMachine isapc_machine = {
},
{ /* end of list */ }
},
+ DEFAULT_MACHINE_OPTIONS,
};
#ifdef CONFIG_XEN
@@ -641,6 +653,7 @@ static QEMUMachine xenfv_machine = {
.init = pc_xen_hvm_init,
.max_cpus = HVM_MAX_VCPUS,
.default_machine_opts = "accel=xen",
+ DEFAULT_MACHINE_OPTIONS,
};
#endif
diff --git a/hw/petalogix_ml605_mmu.c b/hw/petalogix_ml605_mmu.c
index 1cfdb2f..9cad074 100644
--- a/hw/petalogix_ml605_mmu.c
+++ b/hw/petalogix_ml605_mmu.c
@@ -173,7 +173,8 @@ static QEMUMachine petalogix_ml605_machine = {
.name = "petalogix-ml605",
.desc = "PetaLogix linux refdesign for xilinx ml605 little endian",
.init = petalogix_ml605_init,
- .is_default = 0
+ .is_default = 0,
+ DEFAULT_MACHINE_OPTIONS,
};
static void petalogix_ml605_machine_init(void)
diff --git a/hw/petalogix_s3adsp1800_mmu.c b/hw/petalogix_s3adsp1800_mmu.c
index 27ecfe7..8605fb8 100644
--- a/hw/petalogix_s3adsp1800_mmu.c
+++ b/hw/petalogix_s3adsp1800_mmu.c
@@ -115,7 +115,8 @@ static QEMUMachine petalogix_s3adsp1800_machine = {
.name = "petalogix-s3adsp1800",
.desc = "PetaLogix linux refdesign for xilinx Spartan 3ADSP1800",
.init = petalogix_s3adsp1800_init,
- .is_default = 1
+ .is_default = 1,
+ DEFAULT_MACHINE_OPTIONS,
};
static void petalogix_s3adsp1800_machine_init(void)
diff --git a/hw/ppc/e500plat.c b/hw/ppc/e500plat.c
index 4deb02a..2dcc4a9 100644
--- a/hw/ppc/e500plat.c
+++ b/hw/ppc/e500plat.c
@@ -54,6 +54,7 @@ static QEMUMachine e500plat_machine = {
.desc = "generic paravirt e500 platform",
.init = e500plat_init,
.max_cpus = 15,
+ DEFAULT_MACHINE_OPTIONS,
};
static void e500plat_machine_init(void)
diff --git a/hw/ppc/mpc8544ds.c b/hw/ppc/mpc8544ds.c
index f9ae20f5..8e05e55 100644
--- a/hw/ppc/mpc8544ds.c
+++ b/hw/ppc/mpc8544ds.c
@@ -54,6 +54,7 @@ static QEMUMachine ppce500_machine = {
.desc = "mpc8544ds",
.init = mpc8544ds_init,
.max_cpus = 15,
+ DEFAULT_MACHINE_OPTIONS,
};
static void ppce500_machine_init(void)
diff --git a/hw/ppc405_boards.c b/hw/ppc405_boards.c
index 8f7f0d0..45ed376 100644
--- a/hw/ppc405_boards.c
+++ b/hw/ppc405_boards.c
@@ -649,6 +649,7 @@ static QEMUMachine taihu_machine = {
.name = "taihu",
.desc = "taihu",
.init = taihu_405ep_init,
+ DEFAULT_MACHINE_OPTIONS,
};
static void ppc405_machine_init(void)
diff --git a/hw/ppc440_bamboo.c b/hw/ppc440_bamboo.c
index d1e4f0e..73b5ac7 100644
--- a/hw/ppc440_bamboo.c
+++ b/hw/ppc440_bamboo.c
@@ -295,6 +295,7 @@ static QEMUMachine bamboo_machine = {
.name = "bamboo",
.desc = "bamboo",
.init = bamboo_init,
+ DEFAULT_MACHINE_OPTIONS,
};
static void bamboo_machine_init(void)
diff --git a/hw/ppc_newworld.c b/hw/ppc_newworld.c
index fabcc08..7a465a7 100644
--- a/hw/ppc_newworld.c
+++ b/hw/ppc_newworld.c
@@ -442,6 +442,7 @@ static QEMUMachine core99_machine = {
#ifdef TARGET_PPC64
.is_default = 1,
#endif
+ DEFAULT_MACHINE_OPTIONS,
};
static void core99_machine_init(void)
diff --git a/hw/ppc_oldworld.c b/hw/ppc_oldworld.c
index fff5129..de34e75 100644
--- a/hw/ppc_oldworld.c
+++ b/hw/ppc_oldworld.c
@@ -341,6 +341,7 @@ static QEMUMachine heathrow_machine = {
#ifndef TARGET_PPC64
.is_default = 1,
#endif
+ DEFAULT_MACHINE_OPTIONS,
};
static void heathrow_machine_init(void)
diff --git a/hw/ppc_prep.c b/hw/ppc_prep.c
index 417583a..a35fbed 100644
--- a/hw/ppc_prep.c
+++ b/hw/ppc_prep.c
@@ -669,6 +669,7 @@ static QEMUMachine prep_machine = {
.desc = "PowerPC PREP platform",
.init = ppc_prep_init,
.max_cpus = MAX_CPUS,
+ DEFAULT_MACHINE_OPTIONS,
};
static void prep_machine_init(void)
diff --git a/hw/puv3.c b/hw/puv3.c
index 7814bc5..c722510 100644
--- a/hw/puv3.c
+++ b/hw/puv3.c
@@ -124,6 +124,7 @@ static QEMUMachine puv3_machine = {
.desc = "PKUnity Version-3 based on UniCore32",
.init = puv3_init,
.is_default = 1,
+ DEFAULT_MACHINE_OPTIONS,
};
static void puv3_machine_init(void)
diff --git a/hw/r2d.c b/hw/r2d.c
index 7cf1893..72b593f 100644
--- a/hw/r2d.c
+++ b/hw/r2d.c
@@ -347,6 +347,7 @@ static QEMUMachine r2d_machine = {
.name = "r2d",
.desc = "r2d-plus board",
.init = r2d_init,
+ DEFAULT_MACHINE_OPTIONS,
};
static void r2d_machine_init(void)
diff --git a/hw/realview.c b/hw/realview.c
index 872b3b4..cecb67e 100644
--- a/hw/realview.c
+++ b/hw/realview.c
@@ -365,6 +365,7 @@ static QEMUMachine realview_eb_machine = {
.desc = "ARM RealView Emulation Baseboard (ARM926EJ-S)",
.init = realview_eb_init,
.block_default_type = IF_SCSI,
+ DEFAULT_MACHINE_OPTIONS,
};
static QEMUMachine realview_eb_mpcore_machine = {
@@ -373,12 +374,14 @@ static QEMUMachine realview_eb_mpcore_machine = {
.init = realview_eb_mpcore_init,
.block_default_type = IF_SCSI,
.max_cpus = 4,
+ DEFAULT_MACHINE_OPTIONS,
};
static QEMUMachine realview_pb_a8_machine = {
.name = "realview-pb-a8",
.desc = "ARM RealView Platform Baseboard for Cortex-A8",
.init = realview_pb_a8_init,
+ DEFAULT_MACHINE_OPTIONS,
};
static QEMUMachine realview_pbx_a9_machine = {
@@ -387,6 +390,7 @@ static QEMUMachine realview_pbx_a9_machine = {
.init = realview_pbx_a9_init,
.block_default_type = IF_SCSI,
.max_cpus = 4,
+ DEFAULT_MACHINE_OPTIONS,
};
static void realview_machine_init(void)
diff --git a/hw/s390-virtio.c b/hw/s390-virtio.c
index 2082776..0e93cc3 100644
--- a/hw/s390-virtio.c
+++ b/hw/s390-virtio.c
@@ -330,6 +330,7 @@ static QEMUMachine s390_machine = {
.use_virtcon = 1,
.max_cpus = 255,
.is_default = 1,
+ DEFAULT_MACHINE_OPTIONS,
};
static void s390_machine_init(void)
diff --git a/hw/shix.c b/hw/shix.c
index 86d703a..6f2d55a 100644
--- a/hw/shix.c
+++ b/hw/shix.c
@@ -92,6 +92,7 @@ static QEMUMachine shix_machine = {
.desc = "shix card",
.init = shix_init,
.is_default = 1,
+ DEFAULT_MACHINE_OPTIONS,
};
static void shix_machine_init(void)
diff --git a/hw/spapr.c b/hw/spapr.c
index 76aa09b..6476598 100644
--- a/hw/spapr.c
+++ b/hw/spapr.c
@@ -964,6 +964,7 @@ static QEMUMachine spapr_machine = {
.block_default_type = IF_SCSI,
.max_cpus = MAX_CPUS,
.no_parallel = 1,
+ DEFAULT_MACHINE_OPTIONS,
};
static void spapr_machine_init(void)
diff --git a/hw/spitz.c b/hw/spitz.c
index f1659c4..ab7ca80 100644
--- a/hw/spitz.c
+++ b/hw/spitz.c
@@ -959,24 +959,28 @@ static QEMUMachine akitapda_machine = {
.name = "akita",
.desc = "Akita PDA (PXA270)",
.init = akita_init,
+ DEFAULT_MACHINE_OPTIONS,
};
static QEMUMachine spitzpda_machine = {
.name = "spitz",
.desc = "Spitz PDA (PXA270)",
.init = spitz_init,
+ DEFAULT_MACHINE_OPTIONS,
};
static QEMUMachine borzoipda_machine = {
.name = "borzoi",
.desc = "Borzoi PDA (PXA270)",
.init = borzoi_init,
+ DEFAULT_MACHINE_OPTIONS,
};
static QEMUMachine terrierpda_machine = {
.name = "terrier",
.desc = "Terrier PDA (PXA270)",
.init = terrier_init,
+ DEFAULT_MACHINE_OPTIONS,
};
static void spitz_machine_init(void)
diff --git a/hw/stellaris.c b/hw/stellaris.c
index 12e4568..b5e78ff 100644
--- a/hw/stellaris.c
+++ b/hw/stellaris.c
@@ -1331,12 +1331,14 @@ static QEMUMachine lm3s811evb_machine = {
.name = "lm3s811evb",
.desc = "Stellaris LM3S811EVB",
.init = lm3s811evb_init,
+ DEFAULT_MACHINE_OPTIONS,
};
static QEMUMachine lm3s6965evb_machine = {
.name = "lm3s6965evb",
.desc = "Stellaris LM3S6965EVB",
.init = lm3s6965evb_init,
+ DEFAULT_MACHINE_OPTIONS,
};
static void stellaris_machine_init(void)
diff --git a/hw/sun4m.c b/hw/sun4m.c
index 5925d29..6f5de44 100644
--- a/hw/sun4m.c
+++ b/hw/sun4m.c
@@ -1428,6 +1428,7 @@ static QEMUMachine ss5_machine = {
.init = ss5_init,
.block_default_type = IF_SCSI,
.is_default = 1,
+ DEFAULT_MACHINE_OPTIONS,
};
static QEMUMachine ss10_machine = {
@@ -1436,6 +1437,7 @@ static QEMUMachine ss10_machine = {
.init = ss10_init,
.block_default_type = IF_SCSI,
.max_cpus = 4,
+ DEFAULT_MACHINE_OPTIONS,
};
static QEMUMachine ss600mp_machine = {
@@ -1444,6 +1446,7 @@ static QEMUMachine ss600mp_machine = {
.init = ss600mp_init,
.block_default_type = IF_SCSI,
.max_cpus = 4,
+ DEFAULT_MACHINE_OPTIONS,
};
static QEMUMachine ss20_machine = {
@@ -1452,6 +1455,7 @@ static QEMUMachine ss20_machine = {
.init = ss20_init,
.block_default_type = IF_SCSI,
.max_cpus = 4,
+ DEFAULT_MACHINE_OPTIONS,
};
static QEMUMachine voyager_machine = {
@@ -1459,6 +1463,7 @@ static QEMUMachine voyager_machine = {
.desc = "Sun4m platform, SPARCstation Voyager",
.init = vger_init,
.block_default_type = IF_SCSI,
+ DEFAULT_MACHINE_OPTIONS,
};
static QEMUMachine ss_lx_machine = {
@@ -1466,6 +1471,7 @@ static QEMUMachine ss_lx_machine = {
.desc = "Sun4m platform, SPARCstation LX",
.init = ss_lx_init,
.block_default_type = IF_SCSI,
+ DEFAULT_MACHINE_OPTIONS,
};
static QEMUMachine ss4_machine = {
@@ -1473,6 +1479,7 @@ static QEMUMachine ss4_machine = {
.desc = "Sun4m platform, SPARCstation 4",
.init = ss4_init,
.block_default_type = IF_SCSI,
+ DEFAULT_MACHINE_OPTIONS,
};
static QEMUMachine scls_machine = {
@@ -1480,6 +1487,7 @@ static QEMUMachine scls_machine = {
.desc = "Sun4m platform, SPARCClassic",
.init = scls_init,
.block_default_type = IF_SCSI,
+ DEFAULT_MACHINE_OPTIONS,
};
static QEMUMachine sbook_machine = {
@@ -1487,6 +1495,7 @@ static QEMUMachine sbook_machine = {
.desc = "Sun4m platform, SPARCbook",
.init = sbook_init,
.block_default_type = IF_SCSI,
+ DEFAULT_MACHINE_OPTIONS,
};
static const struct sun4d_hwdef sun4d_hwdefs[] = {
@@ -1711,6 +1720,7 @@ static QEMUMachine ss1000_machine = {
.init = ss1000_init,
.block_default_type = IF_SCSI,
.max_cpus = 8,
+ DEFAULT_MACHINE_OPTIONS,
};
static QEMUMachine ss2000_machine = {
@@ -1719,6 +1729,7 @@ static QEMUMachine ss2000_machine = {
.init = ss2000_init,
.block_default_type = IF_SCSI,
.max_cpus = 20,
+ DEFAULT_MACHINE_OPTIONS,
};
static const struct sun4c_hwdef sun4c_hwdefs[] = {
@@ -1897,6 +1908,7 @@ static QEMUMachine ss2_machine = {
.desc = "Sun4c platform, SPARCstation 2",
.init = ss2_init,
.block_default_type = IF_SCSI,
+ DEFAULT_MACHINE_OPTIONS,
};
static void sun4m_register_types(void)
diff --git a/hw/sun4u.c b/hw/sun4u.c
index 3a06d70..cb75d03 100644
--- a/hw/sun4u.c
+++ b/hw/sun4u.c
@@ -978,6 +978,7 @@ static QEMUMachine sun4u_machine = {
.init = sun4u_init,
.max_cpus = 1, // XXX for now
.is_default = 1,
+ DEFAULT_MACHINE_OPTIONS,
};
static QEMUMachine sun4v_machine = {
@@ -985,6 +986,7 @@ static QEMUMachine sun4v_machine = {
.desc = "Sun4v platform",
.init = sun4v_init,
.max_cpus = 1, // XXX for now
+ DEFAULT_MACHINE_OPTIONS,
};
static QEMUMachine niagara_machine = {
@@ -992,6 +994,7 @@ static QEMUMachine niagara_machine = {
.desc = "Sun4v platform, Niagara",
.init = niagara_init,
.max_cpus = 1, // XXX for now
+ DEFAULT_MACHINE_OPTIONS,
};
static void sun4u_register_types(void)
diff --git a/hw/tosa.c b/hw/tosa.c
index 7048b79..efea109 100644
--- a/hw/tosa.c
+++ b/hw/tosa.c
@@ -251,6 +251,7 @@ static QEMUMachine tosapda_machine = {
.name = "tosa",
.desc = "Tosa PDA (PXA255)",
.init = tosa_init,
+ DEFAULT_MACHINE_OPTIONS,
};
static void tosapda_machine_init(void)
diff --git a/hw/versatilepb.c b/hw/versatilepb.c
index bf72ebb..7a1b20b 100644
--- a/hw/versatilepb.c
+++ b/hw/versatilepb.c
@@ -359,6 +359,7 @@ static QEMUMachine versatilepb_machine = {
.desc = "ARM Versatile/PB (ARM926EJ-S)",
.init = vpb_init,
.block_default_type = IF_SCSI,
+ DEFAULT_MACHINE_OPTIONS,
};
static QEMUMachine versatileab_machine = {
@@ -366,6 +367,7 @@ static QEMUMachine versatileab_machine = {
.desc = "ARM Versatile/AB (ARM926EJ-S)",
.init = vab_init,
.block_default_type = IF_SCSI,
+ DEFAULT_MACHINE_OPTIONS,
};
static void versatile_machine_init(void)
diff --git a/hw/vexpress.c b/hw/vexpress.c
index 93c3176..6bbe8c3 100644
--- a/hw/vexpress.c
+++ b/hw/vexpress.c
@@ -479,6 +479,7 @@ static QEMUMachine vexpress_a9_machine = {
.init = vexpress_a9_init,
.block_default_type = IF_SCSI,
.max_cpus = 4,
+ DEFAULT_MACHINE_OPTIONS,
};
static QEMUMachine vexpress_a15_machine = {
@@ -487,6 +488,7 @@ static QEMUMachine vexpress_a15_machine = {
.init = vexpress_a15_init,
.block_default_type = IF_SCSI,
.max_cpus = 4,
+ DEFAULT_MACHINE_OPTIONS,
};
static void vexpress_machine_init(void)
diff --git a/hw/virtex_ml507.c b/hw/virtex_ml507.c
index 78450d7..8c4e8e4 100644
--- a/hw/virtex_ml507.c
+++ b/hw/virtex_ml507.c
@@ -263,6 +263,7 @@ static QEMUMachine virtex_machine = {
.name = "virtex-ml507",
.desc = "Xilinx Virtex ML507 reference design",
.init = virtex_init,
+ DEFAULT_MACHINE_OPTIONS,
};
static void virtex_machine_init(void)
diff --git a/hw/xen_machine_pv.c b/hw/xen_machine_pv.c
index 9feecd5..66e8981 100644
--- a/hw/xen_machine_pv.c
+++ b/hw/xen_machine_pv.c
@@ -115,6 +115,7 @@ static QEMUMachine xenpv_machine = {
.init = xen_init_pv,
.max_cpus = 1,
.default_machine_opts = "accel=xen",
+ DEFAULT_MACHINE_OPTIONS,
};
static void xenpv_machine_init(void)
diff --git a/hw/xilinx_zynq.c b/hw/xilinx_zynq.c
index da0a7d0..8dede9f 100644
--- a/hw/xilinx_zynq.c
+++ b/hw/xilinx_zynq.c
@@ -203,7 +203,8 @@ static QEMUMachine zynq_machine = {
.init = zynq_init,
.block_default_type = IF_SCSI,
.max_cpus = 1,
- .no_sdcard = 1
+ .no_sdcard = 1,
+ DEFAULT_MACHINE_OPTIONS,
};
static void zynq_machine_init(void)
diff --git a/hw/xtensa_lx60.c b/hw/xtensa_lx60.c
index 0b9a5285..a85fe9b 100644
--- a/hw/xtensa_lx60.c
+++ b/hw/xtensa_lx60.c
@@ -295,6 +295,7 @@ static QEMUMachine xtensa_lx60_machine = {
.desc = "lx60 EVB (" XTENSA_DEFAULT_CPU_MODEL ")",
.init = xtensa_lx60_init,
.max_cpus = 4,
+ DEFAULT_MACHINE_OPTIONS,
};
static QEMUMachine xtensa_lx200_machine = {
@@ -302,6 +303,7 @@ static QEMUMachine xtensa_lx200_machine = {
.desc = "lx200 EVB (" XTENSA_DEFAULT_CPU_MODEL ")",
.init = xtensa_lx200_init,
.max_cpus = 4,
+ DEFAULT_MACHINE_OPTIONS,
};
static void xtensa_lx_machines_init(void)
diff --git a/hw/xtensa_sim.c b/hw/xtensa_sim.c
index 14fe85b..864e57c 100644
--- a/hw/xtensa_sim.c
+++ b/hw/xtensa_sim.c
@@ -106,6 +106,7 @@ static QEMUMachine xtensa_sim_machine = {
.is_default = true,
.init = xtensa_sim_init,
.max_cpus = 4,
+ DEFAULT_MACHINE_OPTIONS,
};
static void xtensa_sim_machine_init(void)
diff --git a/hw/z2.c b/hw/z2.c
index 496e47d..731550f 100644
--- a/hw/z2.c
+++ b/hw/z2.c
@@ -373,6 +373,7 @@ static QEMUMachine z2_machine = {
.name = "z2",
.desc = "Zipit Z2 (PXA27x)",
.init = z2_init,
+ DEFAULT_MACHINE_OPTIONS,
};
static void z2_machine_init(void)
diff --git a/vl.c b/vl.c
index 59ce063..15e0280 100644
--- a/vl.c
+++ b/vl.c
@@ -2712,7 +2712,7 @@ int main(int argc, char **argv, char **envp)
const char *icount_option = NULL;
const char *initrd_filename;
const char *kernel_filename, *kernel_cmdline;
- char boot_devices[33] = "cad"; /* default to HD->floppy->CD-ROM */
+ char boot_devices[33] = "";
DisplayState *ds;
int cyls, heads, secs, translation;
QemuOpts *hda_opts = NULL, *opts, *machine_opts;
@@ -4084,7 +4084,9 @@ int main(int argc, char **argv, char **envp)
qdev_machine_init();
QEMUMachineInitArgs args = { .ram_size = ram_size,
- .boot_device = boot_devices,
+ .boot_device = (boot_devices[0] == '\0') ?
+ machine->boot_order :
+ boot_devices,
.kernel_filename = kernel_filename,
.kernel_cmdline = kernel_cmdline,
.initrd_filename = initrd_filename,