Lines Matching refs:cluster

46 static int tc2_pm_cpu_powerup(unsigned int cpu, unsigned int cluster)  in tc2_pm_cpu_powerup()  argument
48 pr_debug("%s: cpu %u cluster %u\n", __func__, cpu, cluster); in tc2_pm_cpu_powerup()
49 if (cluster >= TC2_CLUSTERS || cpu >= tc2_nr_cpus[cluster]) in tc2_pm_cpu_powerup()
51 ve_spc_set_resume_addr(cluster, cpu, in tc2_pm_cpu_powerup()
53 ve_spc_cpu_wakeup_irq(cluster, cpu, true); in tc2_pm_cpu_powerup()
57 static int tc2_pm_cluster_powerup(unsigned int cluster) in tc2_pm_cluster_powerup() argument
59 pr_debug("%s: cluster %u\n", __func__, cluster); in tc2_pm_cluster_powerup()
60 if (cluster >= TC2_CLUSTERS) in tc2_pm_cluster_powerup()
62 ve_spc_powerdown(cluster, false); in tc2_pm_cluster_powerup()
66 static void tc2_pm_cpu_powerdown_prepare(unsigned int cpu, unsigned int cluster) in tc2_pm_cpu_powerdown_prepare() argument
68 pr_debug("%s: cpu %u cluster %u\n", __func__, cpu, cluster); in tc2_pm_cpu_powerdown_prepare()
69 BUG_ON(cluster >= TC2_CLUSTERS || cpu >= TC2_MAX_CPUS_PER_CLUSTER); in tc2_pm_cpu_powerdown_prepare()
70 ve_spc_cpu_wakeup_irq(cluster, cpu, true); in tc2_pm_cpu_powerdown_prepare()
81 static void tc2_pm_cluster_powerdown_prepare(unsigned int cluster) in tc2_pm_cluster_powerdown_prepare() argument
83 pr_debug("%s: cluster %u\n", __func__, cluster); in tc2_pm_cluster_powerdown_prepare()
84 BUG_ON(cluster >= TC2_CLUSTERS); in tc2_pm_cluster_powerdown_prepare()
85 ve_spc_powerdown(cluster, true); in tc2_pm_cluster_powerdown_prepare()
112 static int tc2_core_in_reset(unsigned int cpu, unsigned int cluster) in tc2_core_in_reset() argument
114 u32 mask = cluster ? in tc2_core_in_reset()
124 static int tc2_pm_wait_for_powerdown(unsigned int cpu, unsigned int cluster) in tc2_pm_wait_for_powerdown() argument
128 pr_debug("%s: cpu %u cluster %u\n", __func__, cpu, cluster); in tc2_pm_wait_for_powerdown()
129 BUG_ON(cluster >= TC2_CLUSTERS || cpu >= TC2_MAX_CPUS_PER_CLUSTER); in tc2_pm_wait_for_powerdown()
133 __func__, cpu, cluster, in tc2_pm_wait_for_powerdown()
144 if (tc2_core_in_reset(cpu, cluster) || in tc2_pm_wait_for_powerdown()
145 ve_spc_cpu_in_wfi(cpu, cluster)) in tc2_pm_wait_for_powerdown()
155 static void tc2_pm_cpu_suspend_prepare(unsigned int cpu, unsigned int cluster) in tc2_pm_cpu_suspend_prepare() argument
157 ve_spc_set_resume_addr(cluster, cpu, __pa_symbol(mcpm_entry_point)); in tc2_pm_cpu_suspend_prepare()
160 static void tc2_pm_cpu_is_up(unsigned int cpu, unsigned int cluster) in tc2_pm_cpu_is_up() argument
162 pr_debug("%s: cpu %u cluster %u\n", __func__, cpu, cluster); in tc2_pm_cpu_is_up()
163 BUG_ON(cluster >= TC2_CLUSTERS || cpu >= TC2_MAX_CPUS_PER_CLUSTER); in tc2_pm_cpu_is_up()
164 ve_spc_cpu_wakeup_irq(cluster, cpu, false); in tc2_pm_cpu_is_up()
165 ve_spc_set_resume_addr(cluster, cpu, 0); in tc2_pm_cpu_is_up()
168 static void tc2_pm_cluster_is_up(unsigned int cluster) in tc2_pm_cluster_is_up() argument
170 pr_debug("%s: cluster %u\n", __func__, cluster); in tc2_pm_cluster_is_up()
171 BUG_ON(cluster >= TC2_CLUSTERS); in tc2_pm_cluster_is_up()
172 ve_spc_powerdown(cluster, false); in tc2_pm_cluster_is_up()
202 unsigned int mpidr, cpu, cluster; in tc2_pm_init() local
244 cluster = MPIDR_AFFINITY_LEVEL(mpidr, 1); in tc2_pm_init()
245 pr_debug("%s: cpu %u cluster %u\n", __func__, cpu, cluster); in tc2_pm_init()
246 if (cluster >= TC2_CLUSTERS || cpu >= tc2_nr_cpus[cluster]) { in tc2_pm_init()