drivers: base: cacheinfo: move cache_setup_of_node()
In preparation for the next patch, and to aid in review of that patch, lets move cache_setup_of_node further down in the module without any changes. Tested-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Tested-by: Vijaya Kumar K <vkilari@codeaurora.org> Tested-by: Xiongfeng Wang <wangxiongfeng2@huawei.com> Tested-by: Tomasz Nowicki <Tomasz.Nowicki@cavium.com> Reviewed-by: Sudeep Holla <sudeep.holla@arm.com> Acked-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Signed-off-by: Jeremy Linton <jeremy.linton@arm.com> Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
This commit is contained in:
parent
1cfc63b5ae
commit
d529a18a61
|
@ -32,46 +32,6 @@ struct cpu_cacheinfo *get_cpu_cacheinfo(unsigned int cpu)
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef CONFIG_OF
|
#ifdef CONFIG_OF
|
||||||
static int cache_setup_of_node(unsigned int cpu)
|
|
||||||
{
|
|
||||||
struct device_node *np;
|
|
||||||
struct cacheinfo *this_leaf;
|
|
||||||
struct device *cpu_dev = get_cpu_device(cpu);
|
|
||||||
struct cpu_cacheinfo *this_cpu_ci = get_cpu_cacheinfo(cpu);
|
|
||||||
unsigned int index = 0;
|
|
||||||
|
|
||||||
/* skip if of_node is already populated */
|
|
||||||
if (this_cpu_ci->info_list->of_node)
|
|
||||||
return 0;
|
|
||||||
|
|
||||||
if (!cpu_dev) {
|
|
||||||
pr_err("No cpu device for CPU %d\n", cpu);
|
|
||||||
return -ENODEV;
|
|
||||||
}
|
|
||||||
np = cpu_dev->of_node;
|
|
||||||
if (!np) {
|
|
||||||
pr_err("Failed to find cpu%d device node\n", cpu);
|
|
||||||
return -ENOENT;
|
|
||||||
}
|
|
||||||
|
|
||||||
while (index < cache_leaves(cpu)) {
|
|
||||||
this_leaf = this_cpu_ci->info_list + index;
|
|
||||||
if (this_leaf->level != 1)
|
|
||||||
np = of_find_next_cache_node(np);
|
|
||||||
else
|
|
||||||
np = of_node_get(np);/* cpu node itself */
|
|
||||||
if (!np)
|
|
||||||
break;
|
|
||||||
this_leaf->of_node = np;
|
|
||||||
index++;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (index != cache_leaves(cpu)) /* not all OF nodes populated */
|
|
||||||
return -ENOENT;
|
|
||||||
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
static inline bool cache_leaves_are_shared(struct cacheinfo *this_leaf,
|
static inline bool cache_leaves_are_shared(struct cacheinfo *this_leaf,
|
||||||
struct cacheinfo *sib_leaf)
|
struct cacheinfo *sib_leaf)
|
||||||
{
|
{
|
||||||
|
@ -202,6 +162,46 @@ static void cache_of_override_properties(unsigned int cpu)
|
||||||
cache_associativity(this_leaf);
|
cache_associativity(this_leaf);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static int cache_setup_of_node(unsigned int cpu)
|
||||||
|
{
|
||||||
|
struct device_node *np;
|
||||||
|
struct cacheinfo *this_leaf;
|
||||||
|
struct device *cpu_dev = get_cpu_device(cpu);
|
||||||
|
struct cpu_cacheinfo *this_cpu_ci = get_cpu_cacheinfo(cpu);
|
||||||
|
unsigned int index = 0;
|
||||||
|
|
||||||
|
/* skip if of_node is already populated */
|
||||||
|
if (this_cpu_ci->info_list->of_node)
|
||||||
|
return 0;
|
||||||
|
|
||||||
|
if (!cpu_dev) {
|
||||||
|
pr_err("No cpu device for CPU %d\n", cpu);
|
||||||
|
return -ENODEV;
|
||||||
|
}
|
||||||
|
np = cpu_dev->of_node;
|
||||||
|
if (!np) {
|
||||||
|
pr_err("Failed to find cpu%d device node\n", cpu);
|
||||||
|
return -ENOENT;
|
||||||
|
}
|
||||||
|
|
||||||
|
while (index < cache_leaves(cpu)) {
|
||||||
|
this_leaf = this_cpu_ci->info_list + index;
|
||||||
|
if (this_leaf->level != 1)
|
||||||
|
np = of_find_next_cache_node(np);
|
||||||
|
else
|
||||||
|
np = of_node_get(np);/* cpu node itself */
|
||||||
|
if (!np)
|
||||||
|
break;
|
||||||
|
this_leaf->of_node = np;
|
||||||
|
index++;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (index != cache_leaves(cpu)) /* not all OF nodes populated */
|
||||||
|
return -ENOENT;
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
#else
|
#else
|
||||||
static void cache_of_override_properties(unsigned int cpu) { }
|
static void cache_of_override_properties(unsigned int cpu) { }
|
||||||
static inline int cache_setup_of_node(unsigned int cpu) { return 0; }
|
static inline int cache_setup_of_node(unsigned int cpu) { return 0; }
|
||||||
|
|
Loading…
Reference in New Issue