aboutsummaryrefslogtreecommitdiff
path: root/arch_init.h
diff options
context:
space:
mode:
authorBlue Swirl <blauwirbel@gmail.com>2010-03-29 19:23:52 +0000
committerBlue Swirl <blauwirbel@gmail.com>2010-03-29 19:23:52 +0000
commitad96090a01d848df67d70c5259ed8aa321fa8716 (patch)
tree0f1403fdf30208dfefdc3bf45189c98d530cf6a9 /arch_init.h
parent296af7c9524cffbedda258b95272ade25b0a726e (diff)
Refactor target specific handling, compile vl.c only once
Move target specific functions and RAM handling to arch_init.c. Add a flag to QEMUOptions structure to indicate for which architectures the option is allowed, check the flag in run time and remove conditional code in option handling. Now that no target dependencies remain, compile vl.c only once for all targets. Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
Diffstat (limited to 'arch_init.h')
-rw-r--r--arch_init.h33
1 files changed, 33 insertions, 0 deletions
diff --git a/arch_init.h b/arch_init.h
new file mode 100644
index 0000000000..682890c0ec
--- /dev/null
+++ b/arch_init.h
@@ -0,0 +1,33 @@
+#ifndef QEMU_ARCH_INIT_H
+#define QEMU_ARCH_INIT_H
+
+extern const char arch_config_name[];
+
+enum {
+ QEMU_ARCH_ALL = -1,
+ QEMU_ARCH_ALPHA = 1,
+ QEMU_ARCH_ARM = 2,
+ QEMU_ARCH_CRIS = 4,
+ QEMU_ARCH_I386 = 8,
+ QEMU_ARCH_M68K = 16,
+ QEMU_ARCH_MICROBLAZE = 32,
+ QEMU_ARCH_MIPS = 64,
+ QEMU_ARCH_PPC = 128,
+ QEMU_ARCH_S390X = 256,
+ QEMU_ARCH_SH4 = 512,
+ QEMU_ARCH_SPARC = 1024,
+};
+
+extern const uint32_t arch_type;
+
+void select_soundhw(const char *optarg);
+int ram_save_live(Monitor *mon, QEMUFile *f, int stage, void *opaque);
+int ram_load(QEMUFile *f, void *opaque, int version_id);
+void do_acpitable_option(const char *optarg);
+void do_smbios_option(const char *optarg);
+void cpudef_init(void);
+int audio_available(void);
+int kvm_available(void);
+int xen_available(void);
+
+#endif