MIPS: {pm,smp}-cps: use cpu_vpe_id macro
authorPaul Burton <paul.burton@imgtec.com>
Wed, 9 Jul 2014 11:48:21 +0000 (12:48 +0100)
committerRalf Baechle <ralf@linux-mips.org>
Wed, 30 Jul 2014 18:48:42 +0000 (20:48 +0200)
When determining the VPE ID of a CPU, make use of the cpu_vpe_id macro
which will return 0 in a non-MT kernel build. Most code is already doing
so but a couple of places weren't. Fixing this prevents a build failure
for non-MT kernels where struct cpuinfo_mips does not contain the vpe_id
field:

  arch/mips/kernel/pm-cps.c: In function 'cps_pm_enter_state':
  arch/mips/kernel/pm-cps.c:153:51: error: 'struct cpuinfo_mips' has no
      member named 'vpe_id'
    vpe_cfg = &core_cfg->vpe_config[current_cpu_data.vpe_id];

  arch/mips/kernel/smp-cps.c: In function 'wait_for_sibling_halt':
  arch/mips/kernel/smp-cps.c:363:33: error: 'struct cpuinfo_mips' has no
      member named 'vpe_id'
    unsigned vpe_id = cpu_data[cpu].vpe_id;

Signed-off-by: Paul Burton <paul.burton@imgtec.com>
Reviewed-by: Markos Chandras <markos.chandras@imgtec.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
arch/mips/kernel/pm-cps.c
arch/mips/kernel/smp-cps.c

index c409a5a..0614717 100644 (file)
@@ -154,7 +154,7 @@ int cps_pm_enter_state(enum cps_pm_state state)
                        return -EINVAL;
 
                core_cfg = &mips_cps_core_bootcfg[core];
-               vpe_cfg = &core_cfg->vpe_config[current_cpu_data.vpe_id];
+               vpe_cfg = &core_cfg->vpe_config[cpu_vpe_id(&current_cpu_data)];
                vpe_cfg->pc = (unsigned long)mips_cps_pm_restore;
                vpe_cfg->gp = (unsigned long)current_thread_info();
                vpe_cfg->sp = 0;
index 949f2c6..f9b53b4 100644 (file)
@@ -360,7 +360,7 @@ void play_dead(void)
 static void wait_for_sibling_halt(void *ptr_cpu)
 {
        unsigned cpu = (unsigned)ptr_cpu;
-       unsigned vpe_id = cpu_data[cpu].vpe_id;
+       unsigned vpe_id = cpu_vpe_id(&cpu_data[cpu]);
        unsigned halted;
        unsigned long flags;