clk: mvebu: Use of_get_cpu_hwid() to read CPU ID
Use of_get_cpu_hwid() rather than the open coded reading of the CPU nodes "reg" property. The existing code is in fact wrong as the "reg" address cells size is 2 cells for arm64. The existing code happens to work because the DTS files are wrong as well. Signed-off-by: Rob Herring <robh@kernel.org> Link: https://lore.kernel.org/r/20230327-mvebu-clk-fixes-v2-2-8333729ee45d@kernel.org Signed-off-by: Stephen Boyd <sboyd@kernel.org>
This commit is contained in:
committed by
Stephen Boyd
parent
1ab391684c
commit
1949c0ebc8
@@ -253,12 +253,12 @@ static int ap_cpu_clock_probe(struct platform_device *pdev)
|
|||||||
*/
|
*/
|
||||||
nclusters = 1;
|
nclusters = 1;
|
||||||
for_each_of_cpu_node(dn) {
|
for_each_of_cpu_node(dn) {
|
||||||
int cpu, err;
|
u64 cpu;
|
||||||
|
|
||||||
err = of_property_read_u32(dn, "reg", &cpu);
|
cpu = of_get_cpu_hwid(dn, 0);
|
||||||
if (WARN_ON(err)) {
|
if (WARN_ON(cpu == OF_BAD_ADDR)) {
|
||||||
of_node_put(dn);
|
of_node_put(dn);
|
||||||
return err;
|
return -EINVAL;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* If cpu2 or cpu3 is enabled */
|
/* If cpu2 or cpu3 is enabled */
|
||||||
@@ -288,12 +288,12 @@ static int ap_cpu_clock_probe(struct platform_device *pdev)
|
|||||||
struct clk_init_data init;
|
struct clk_init_data init;
|
||||||
const char *parent_name;
|
const char *parent_name;
|
||||||
struct clk *parent;
|
struct clk *parent;
|
||||||
int cpu, err;
|
u64 cpu;
|
||||||
|
|
||||||
err = of_property_read_u32(dn, "reg", &cpu);
|
cpu = of_get_cpu_hwid(dn, 0);
|
||||||
if (WARN_ON(err)) {
|
if (WARN_ON(cpu == OF_BAD_ADDR)) {
|
||||||
of_node_put(dn);
|
of_node_put(dn);
|
||||||
return err;
|
return -EINVAL;
|
||||||
}
|
}
|
||||||
|
|
||||||
cluster_index = cpu & APN806_CLUSTER_NUM_MASK;
|
cluster_index = cpu & APN806_CLUSTER_NUM_MASK;
|
||||||
|
Reference in New Issue
Block a user