summary refs log tree commit diff stats
path: root/arch_init.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch_init.c')
-rw-r--r--arch_init.c25
1 files changed, 16 insertions, 9 deletions
diff --git a/arch_init.c b/arch_init.c
index 152cbbbb63..62332e9ff0 100644
--- a/arch_init.c
+++ b/arch_init.c
@@ -112,20 +112,27 @@ const uint32_t arch_type = QEMU_ARCH;
 #endif
 
 
+static struct defconfig_file {
+    const char *filename;
+} default_config_files[] = {
+    { CONFIG_QEMU_CONFDIR "/qemu.conf" },
+    { CONFIG_QEMU_CONFDIR "/target-" TARGET_ARCH ".conf" },
+    { NULL }, /* end of list */
+};
+
+
 int qemu_read_default_config_files(void)
 {
     int ret;
-    
-    ret = qemu_read_config_file(CONFIG_QEMU_CONFDIR "/qemu.conf");
-    if (ret < 0 && ret != -ENOENT) {
-        return ret;
-    }
+    struct defconfig_file *f;
 
-    ret = qemu_read_config_file(CONFIG_QEMU_CONFDIR "/target-" TARGET_ARCH ".conf");
-    if (ret < 0 && ret != -ENOENT) {
-        return ret;
+    for (f = default_config_files; f->filename; f++) {
+        ret = qemu_read_config_file(f->filename);
+        if (ret < 0 && ret != -ENOENT) {
+            return ret;
+        }
     }
-
+    
     return 0;
 }