int __cpuinit arm_boot_secondary(unsigned int cpu, struct task_struct *idle) { pr_debug("Starting secondary CPU %d\n", cpu); if (per_cpu(cold_boot_done, cpu) == false) { if (of_board_is_sim()) release_secondary_sim(0xf9088000, cpu); else if (!of_board_is_rumi()) arm_release_secondary(0xf9088000, cpu); per_cpu(cold_boot_done, cpu) = true; } return release_from_pen(cpu); }
int __cpuinit msm8962_boot_secondary(unsigned int cpu, struct task_struct *idle) { pr_debug("Starting secondary CPU %d\n", cpu); if (per_cpu(cold_boot_done, cpu) == false) { if (of_board_is_sim()) release_secondary_sim(APCS_ALIAS0_BASE_ADDR, cpu); else if (!of_board_is_rumi()) msm8962_release_secondary(APCS_ALIAS0_BASE_ADDR, cpu); per_cpu(cold_boot_done, cpu) = true; } return release_from_pen(cpu); }
static int msm8994_cpu_boot(unsigned int cpu) { int ret = 0; if (per_cpu(cold_boot_done, cpu) == false) { if (of_board_is_sim()) { ret = msm_unclamp_secondary_arm_cpu_sim(cpu); if (ret) return ret; } else { ret = msm8994_unclamp_secondary_arm_cpu(cpu); if (ret) return ret; } per_cpu(cold_boot_done, cpu) = true; } return secondary_pen_release(cpu); }
static int __cpuinit msm8936_boot_secondary(unsigned int cpu, struct task_struct *idle) { pr_debug("Starting secondary CPU %d\n", cpu); if (per_cpu(cold_boot_done, cpu) == false) { u32 mpidr = cpu_logical_map(cpu); u32 apcs_base = MPIDR_AFFINITY_LEVEL(mpidr, 1) ? 0xb088000 : 0xb188000; if (of_board_is_sim()) release_secondary_sim(apcs_base, MPIDR_AFFINITY_LEVEL(mpidr, 0)); else if (!of_board_is_rumi()) arm_release_secondary(apcs_base, MPIDR_AFFINITY_LEVEL(mpidr, 0)); per_cpu(cold_boot_done, cpu) = true; } return release_from_pen(cpu); }
static int __cpuinit msm8936_boot_secondary(unsigned int cpu, struct task_struct *idle) { int ret = 0; pr_debug("Starting secondary CPU %d\n", cpu); if (per_cpu(cold_boot_done, cpu) == false) { if (of_board_is_sim()) { ret = msm_unclamp_secondary_arm_cpu_sim(cpu); if (ret) return ret; } else if (!of_board_is_rumi()) { ret = msm_unclamp_secondary_arm_cpu(cpu); if (ret) return ret; } per_cpu(cold_boot_done, cpu) = true; } return release_from_pen(cpu); }