qemu-commits
[Top][All Lists]
Advanced

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

[Qemu-commits] [COMMIT 727170b] Allow user to specify CPU model


From: Anthony Liguori
Subject: [Qemu-commits] [COMMIT 727170b] Allow user to specify CPU model
Date: Wed, 17 Jun 2009 16:29:59 -0000

From: Blue Swirl <address@hidden>

Signed-off-by: Blue Swirl <address@hidden>

diff --git a/hw/ppc440.c b/hw/ppc440.c
index 00d82e4..5171988 100644
--- a/hw/ppc440.c
+++ b/hw/ppc440.c
@@ -34,7 +34,8 @@ static const unsigned int ppc440ep_sdram_bank_sizes[] = {
 };
 
 CPUState *ppc440ep_init(ram_addr_t *ram_size, PCIBus **pcip,
-                        const unsigned int pci_irq_nrs[4], int do_init)
+                        const unsigned int pci_irq_nrs[4], int do_init,
+                        const char *cpu_model)
 {
     target_phys_addr_t ram_bases[PPC440EP_SDRAM_NR_BANKS];
     target_phys_addr_t ram_sizes[PPC440EP_SDRAM_NR_BANKS];
@@ -44,13 +45,9 @@ CPUState *ppc440ep_init(ram_addr_t *ram_size, PCIBus **pcip,
     qemu_irq *irqs;
     qemu_irq *pci_irqs;
 
-    env = cpu_ppc_init("440EP");
-    if (!env && kvm_enabled()) {
-        /* XXX Since qemu doesn't yet emulate 440, we just say it's a 405.
-         * Since KVM doesn't use qemu's CPU emulation it seems to be working
-         * OK. */
-        env = cpu_ppc_init("405");
-    }
+    if (cpu_model == NULL)
+        cpu_model = "405"; // XXX: should be 440EP
+    env = cpu_init(cpu_model);
     if (!env) {
         fprintf(stderr, "Unable to initialize CPU!\n");
         exit(1);
diff --git a/hw/ppc440.h b/hw/ppc440.h
index b6843eb..a40f917 100644
--- a/hw/ppc440.h
+++ b/hw/ppc440.h
@@ -15,6 +15,7 @@
 #include "hw.h"
 
 CPUState *ppc440ep_init(ram_addr_t *ram_size, PCIBus **pcip,
-                        const unsigned int pci_irq_nrs[4], int do_init);
+                        const unsigned int pci_irq_nrs[4], int do_init,
+                        const char *cpu_model);
 
 #endif
diff --git a/hw/ppc440_bamboo.c b/hw/ppc440_bamboo.c
index 00aa2c7..9882ea5 100644
--- a/hw/ppc440_bamboo.c
+++ b/hw/ppc440_bamboo.c
@@ -103,7 +103,7 @@ static void bamboo_init(ram_addr_t ram_size,
     int i;
 
     /* Setup CPU. */
-    env = ppc440ep_init(&ram_size, &pcibus, pci_irq_nrs, 1);
+    env = ppc440ep_init(&ram_size, &pcibus, pci_irq_nrs, 1, cpu_model);
 
     if (pcibus) {
         int unit_id = 0;




reply via email to

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