summary refs log tree commit diff stats
path: root/include/hw/boards.h
diff options
context:
space:
mode:
authorAlexander Graf <agraf@suse.de>2014-07-01 16:14:41 +0200
committerAlexander Graf <agraf@suse.de>2014-11-04 23:26:14 +0100
commit33cd52b5d7b9adfd009e95f07e6c64dd88ae2a31 (patch)
treeee9d109bd8f45c7cff2cd4490ff106835a21c510 /include/hw/boards.h
parenteb5722801c84f23428c50e2336d02e400ce55deb (diff)
downloadfocaccia-qemu-33cd52b5d7b9adfd009e95f07e6c64dd88ae2a31.tar.gz
focaccia-qemu-33cd52b5d7b9adfd009e95f07e6c64dd88ae2a31.zip
sysbus: Make devices spawnable via -device
Now that we can properly map sysbus devices that haven't been connected to
something forcefully by C code, we can allow the -device command line option
to spawn them.

For machines that don't implement dynamic sysbus assignment in their board
files we add a new bool "has_dynamic_sysbus" to the machine class.
When that property is false (default), we bail out when we see dynamically
spawned sysbus devices, like we did before.

Signed-off-by: Alexander Graf <agraf@suse.de>
Diffstat (limited to 'include/hw/boards.h')
-rw-r--r--include/hw/boards.h8
1 files changed, 6 insertions, 2 deletions
diff --git a/include/hw/boards.h b/include/hw/boards.h
index 99a172d652..e0a67903ef 100644
--- a/include/hw/boards.h
+++ b/include/hw/boards.h
@@ -36,7 +36,8 @@ struct QEMUMachine {
         use_sclp:1,
         no_floppy:1,
         no_cdrom:1,
-        no_sdcard:1;
+        no_sdcard:1,
+        has_dynamic_sysbus:1;
     int is_default;
     const char *default_machine_opts;
     const char *default_boot_order;
@@ -97,7 +98,8 @@ struct MachineClass {
         use_sclp:1,
         no_floppy:1,
         no_cdrom:1,
-        no_sdcard:1;
+        no_sdcard:1,
+        has_dynamic_sysbus:1;
     int is_default;
     const char *default_machine_opts;
     const char *default_boot_order;
@@ -115,6 +117,8 @@ struct MachineClass {
 struct MachineState {
     /*< private >*/
     Object parent_obj;
+    Notifier sysbus_notifier;
+
     /*< public >*/
 
     char *accel;