Skip to content

Commit 2a066ae

Browse files
chleroympe
authored andcommitted
powerpc: Stop using of_root
Replace all usages of of_root by of_find_node_by_path("/") Signed-off-by: Christophe Leroy <christophe.leroy@csgroup.eu> Reviewed-by: Rob Herring <robh@kernel.org> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au> Link: https://msgid.link/20231214103152.12269-5-mpe@ellerman.id.au
1 parent 28da734 commit 2a066ae

8 files changed

Lines changed: 40 additions & 18 deletions

File tree

arch/powerpc/kernel/secure_boot.c

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,8 +32,10 @@ bool is_ppc_secureboot_enabled(void)
3232
if (enabled)
3333
goto out;
3434

35-
if (!of_property_read_u32(of_root, "ibm,secure-boot", &secureboot))
35+
node = of_find_node_by_path("/");
36+
if (!of_property_read_u32(node, "ibm,secure-boot", &secureboot))
3637
enabled = (secureboot > 1);
38+
of_node_put(node);
3739

3840
out:
3941
pr_info("Secure boot mode %s\n", enabled ? "enabled" : "disabled");
@@ -54,8 +56,10 @@ bool is_ppc_trustedboot_enabled(void)
5456
if (enabled)
5557
goto out;
5658

57-
if (!of_property_read_u32(of_root, "ibm,trusted-boot", &trustedboot))
59+
node = of_find_node_by_path("/");
60+
if (!of_property_read_u32(node, "ibm,trusted-boot", &trustedboot))
5861
enabled = (trustedboot > 0);
62+
of_node_put(node);
5963

6064
out:
6165
pr_info("Trusted boot mode %s\n", enabled ? "enabled" : "disabled");

arch/powerpc/kexec/ranges.c

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -385,14 +385,16 @@ int add_opal_mem_range(struct crash_mem **mem_ranges)
385385
int add_reserved_mem_ranges(struct crash_mem **mem_ranges)
386386
{
387387
int n_mem_addr_cells, n_mem_size_cells, i, len, cells, ret = 0;
388+
struct device_node *root = of_find_node_by_path("/");
388389
const __be32 *prop;
389390

390-
prop = of_get_property(of_root, "reserved-ranges", &len);
391+
prop = of_get_property(root, "reserved-ranges", &len);
392+
n_mem_addr_cells = of_n_addr_cells(root);
393+
n_mem_size_cells = of_n_size_cells(root);
394+
of_node_put(root);
391395
if (!prop)
392396
return 0;
393397

394-
n_mem_addr_cells = of_n_addr_cells(of_root);
395-
n_mem_size_cells = of_n_size_cells(of_root);
396398
cells = n_mem_addr_cells + n_mem_size_cells;
397399

398400
/* Each reserved range is an (address,size) pair */

arch/powerpc/mm/drmem.c

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -393,17 +393,17 @@ static const __be32 *of_get_usable_memory(struct device_node *dn)
393393
int walk_drmem_lmbs(struct device_node *dn, void *data,
394394
int (*func)(struct drmem_lmb *, const __be32 **, void *))
395395
{
396+
struct device_node *root = of_find_node_by_path("/");
396397
const __be32 *prop, *usm;
397398
int ret = -ENODEV;
398399

399-
if (!of_root)
400+
if (!root)
400401
return ret;
401402

402403
/* Get the address & size cells */
403-
of_node_get(of_root);
404-
n_root_addr_cells = of_n_addr_cells(of_root);
405-
n_root_size_cells = of_n_size_cells(of_root);
406-
of_node_put(of_root);
404+
n_root_addr_cells = of_n_addr_cells(root);
405+
n_root_size_cells = of_n_size_cells(root);
406+
of_node_put(root);
407407

408408
if (init_drmem_lmb_size(dn))
409409
return ret;

arch/powerpc/mm/numa.c

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1111,7 +1111,7 @@ static void __init setup_node_data(int nid, u64 start_pfn, u64 end_pfn)
11111111

11121112
static void __init find_possible_nodes(void)
11131113
{
1114-
struct device_node *rtas;
1114+
struct device_node *rtas, *root;
11151115
const __be32 *domains = NULL;
11161116
int prop_length, max_nodes;
11171117
u32 i;
@@ -1132,10 +1132,12 @@ static void __init find_possible_nodes(void)
11321132
* If the LPAR is migratable, new nodes might be activated after a LPM,
11331133
* so we should consider the max number in that case.
11341134
*/
1135-
if (!of_get_property(of_root, "ibm,migratable-partition", NULL))
1135+
root = of_find_node_by_path("/");
1136+
if (!of_get_property(root, "ibm,migratable-partition", NULL))
11361137
domains = of_get_property(rtas,
11371138
"ibm,current-associativity-domains",
11381139
&prop_length);
1140+
of_node_put(root);
11391141
if (!domains) {
11401142
domains = of_get_property(rtas, "ibm,max-associativity-domains",
11411143
&prop_length);

arch/powerpc/platforms/52xx/efika.c

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -195,8 +195,10 @@ static void __init efika_setup_arch(void)
195195

196196
static int __init efika_probe(void)
197197
{
198-
const char *model = of_get_property(of_root, "model", NULL);
198+
struct device_node *root = of_find_node_by_path("/");
199+
const char *model = of_get_property(root, "model", NULL);
199200

201+
of_node_put(root);
200202
if (model == NULL)
201203
return 0;
202204
if (strcmp(model, "EFIKA5K2"))

arch/powerpc/platforms/pasemi/pci.c

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -270,16 +270,18 @@ static int __init pas_add_bridge(struct device_node *dev)
270270

271271
void __init pas_pci_init(void)
272272
{
273+
struct device_node *root = of_find_node_by_path("/");
273274
struct device_node *np;
274275
int res;
275276

276277
pci_set_flags(PCI_SCAN_ALL_PCIE_DEVS);
277278

278-
np = of_find_compatible_node(of_root, NULL, "pasemi,rootbus");
279+
np = of_find_compatible_node(root, NULL, "pasemi,rootbus");
279280
if (np) {
280281
res = pas_add_bridge(np);
281282
of_node_put(np);
282283
}
284+
of_node_put(root);
283285
}
284286

285287
void __iomem *__init pasemi_pci_getcfgaddr(struct pci_dev *dev, int offset)

arch/powerpc/platforms/pseries/lparcfg.c

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -346,9 +346,13 @@ static int read_rtas_lpar_name(struct seq_file *m)
346346
*/
347347
static int read_dt_lpar_name(struct seq_file *m)
348348
{
349+
struct device_node *root = of_find_node_by_path("/");
349350
const char *name;
351+
int ret;
350352

351-
if (of_property_read_string(of_root, "ibm,partition-name", &name))
353+
ret = of_property_read_string(root, "ibm,partition-name", &name);
354+
of_node_put(root);
355+
if (ret)
352356
return -ENOENT;
353357

354358
seq_printf(m, "partition_name=%s\n", name);

arch/powerpc/platforms/pseries/setup.c

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1029,9 +1029,11 @@ static void __init pseries_add_hw_description(void)
10291029
return;
10301030
}
10311031

1032-
if (of_property_read_bool(of_root, "ibm,powervm-partition") ||
1033-
of_property_read_bool(of_root, "ibm,fw-net-version"))
1032+
dn = of_find_node_by_path("/");
1033+
if (of_property_read_bool(dn, "ibm,powervm-partition") ||
1034+
of_property_read_bool(dn, "ibm,fw-net-version"))
10341035
seq_buf_printf(&ppc_hw_desc, "hv:phyp ");
1036+
of_node_put(dn);
10351037
}
10361038

10371039
/*
@@ -1091,7 +1093,11 @@ static void pseries_power_off(void)
10911093

10921094
static int __init pSeries_probe(void)
10931095
{
1094-
if (!of_node_is_type(of_root, "chrp"))
1096+
struct device_node *root = of_find_node_by_path("/");
1097+
bool ret = of_node_is_type(root, "chrp");
1098+
1099+
of_node_put(root);
1100+
if (!ret)
10951101
return 0;
10961102

10971103
/* Cell blades firmware claims to be chrp while it's not. Until this

0 commit comments

Comments
 (0)