[PATCH v2 2/6] arch_topology: update CPU map to use the new API
From: Alireza Sanaee
Date: Fri May 02 2025 - 12:14:31 EST
Cleans up the cpu-map generation using the created API.
Signed-off-by: Alireza Sanaee <alireza.sanaee@xxxxxxxxxx>
---
drivers/base/arch_topology.c | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/drivers/base/arch_topology.c b/drivers/base/arch_topology.c
index 3ebe77566788..533ddf69b43c 100644
--- a/drivers/base/arch_topology.c
+++ b/drivers/base/arch_topology.c
@@ -518,23 +518,23 @@ core_initcall(free_raw_capacity);
*/
static int __init get_cpu_for_node(struct device_node *node)
{
+ struct device_node *cpu_node = NULL;
int cpu;
- struct device_node *cpu_node __free(device_node) =
- of_parse_phandle(node, "cpu", 0);
- if (!cpu_node)
- return -1;
+ cpu = of_cpu_phandle_to_id(node, &cpu_node);
- cpu = of_cpu_node_to_id(cpu_node);
if (cpu >= 0)
topology_parse_cpu_capacity(cpu_node, cpu);
- else
+ else if (cpu == -ENODEV)
pr_info("CPU node for %pOF exist but the possible cpu range is :%*pbl\n",
cpu_node, cpumask_pr_args(cpu_possible_mask));
+ else
+ return -1;
return cpu;
}
+
static int __init parse_core(struct device_node *core, int package_id,
int cluster_id, int core_id)
{
--
2.34.1