]> xenbits.xensource.com Git - qemu-upstream-4.5-testing.git/commitdiff
arm_boot: Pass ARMCPU to arm_boot_info::secondary_cpu_reset_hook()
authorAndreas Färber <afaerber@suse.de>
Sun, 13 May 2012 23:05:40 +0000 (01:05 +0200)
committerAndreas Färber <afaerber@suse.de>
Sun, 10 Jun 2012 22:23:04 +0000 (00:23 +0200)
Adapt highbank accordingly.

Signed-off-by: Andreas Färber <afaerber@suse.de>
Acked-by: Peter Maydell <peter.maydell@linaro.org>
hw/arm-misc.h
hw/arm_boot.c
hw/highbank.c

index 320033dba512f4cb729b9188fde6d8e74baa7d25..bbd6fd357cfa3a78b7e9ac7b32afb48217d368d4 100644 (file)
@@ -52,7 +52,7 @@ struct arm_boot_info {
      */
     void (*write_secondary_boot)(ARMCPU *cpu,
                                  const struct arm_boot_info *info);
-    void (*secondary_cpu_reset_hook)(CPUARMState *env,
+    void (*secondary_cpu_reset_hook)(ARMCPU *cpu,
                                      const struct arm_boot_info *info);
     /* Used internally by arm_boot.c */
     int is_linux;
index 4955f019a874257132bbc7a40e95df4ad08a51f8..8eabfb204f3f6e0ef2c6ef808d65a18ce093e9e4 100644 (file)
@@ -72,9 +72,11 @@ static void default_write_secondary(ARMCPU *cpu,
                        info->smp_loader_start);
 }
 
-static void default_reset_secondary(CPUARMState *env,
+static void default_reset_secondary(ARMCPU *cpu,
                                     const struct arm_boot_info *info)
 {
+    CPUARMState *env = &cpu->env;
+
     stl_phys_notdirty(info->smp_bootreg_addr, 0);
     env->regs[15] = info->smp_loader_start;
 }
@@ -295,7 +297,7 @@ static void do_cpu_reset(void *opaque)
                     }
                 }
             } else {
-                info->secondary_cpu_reset_hook(env, info);
+                info->secondary_cpu_reset_hook(cpu, info);
             }
         }
     }
index 45ca1ad757921a131a1c25030f0278e7b902d233..66ff042cd82a1ce1aac4670aabc84389b8180a29 100644 (file)
@@ -60,8 +60,10 @@ static void hb_write_secondary(ARMCPU *cpu, const struct arm_boot_info *info)
     rom_add_blob_fixed("smpboot", smpboot, sizeof(smpboot), SMP_BOOT_ADDR);
 }
 
-static void hb_reset_secondary(CPUARMState *env, const struct arm_boot_info *info)
+static void hb_reset_secondary(ARMCPU *cpu, const struct arm_boot_info *info)
 {
+    CPUARMState *env = &cpu->env;
+
     switch (info->nb_cpus) {
     case 4:
         stl_phys_notdirty(SMP_BOOT_REG + 0x30, 0);