[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20200826120254.8902-1-matthias.schiffer@ew.tq-group.com>
Date: Wed, 26 Aug 2020 14:02:54 +0200
From: Matthias Schiffer <matthias.schiffer@...tq-group.com>
To: Rob Herring <robh+dt@...nel.org>,
Frank Rowand <frowand.list@...il.com>
Cc: devicetree@...r.kernel.org, linux-kernel@...r.kernel.org,
Matthias Schiffer <matthias.schiffer@...tq-group.com>
Subject: [PATCH] of: skip disabled CPU nodes
Allow disabling CPU nodes using status = "disabled".
This allows a bootloader to change the number of available CPUs (for
example when a common DTS is used for SoC variants with different numbers
of cores) without deleting the nodes altogether (which may require
additional fixups where the CPU nodes are referenced, e.g. a cooling
map).
Signed-off-by: Matthias Schiffer <matthias.schiffer@...tq-group.com>
---
drivers/of/base.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/drivers/of/base.c b/drivers/of/base.c
index ea44fea99813..d547e9deced1 100644
--- a/drivers/of/base.c
+++ b/drivers/of/base.c
@@ -796,6 +796,8 @@ struct device_node *of_get_next_cpu_node(struct device_node *prev)
of_node_put(node);
}
for (; next; next = next->sibling) {
+ if (!__of_device_is_available(next))
+ continue;
if (!(of_node_name_eq(next, "cpu") ||
__of_node_is_type(next, "cpu")))
continue;
--
2.17.1
Powered by blists - more mailing lists