Skip to content

Commit

Permalink
[POWERPC] cell: safer of_has_vicinity routine
Browse files Browse the repository at this point in the history
This patch changes the way we check for the existence of
vicinity property in spe device nodes.

The new implementation does not depend on having an initialized
cbe_spu_info[0].spus, and checks for presence of vicinity in all
nodes, not only in the first one.

Signed-off-by: Andre Detsch <adetsch@br.ibm.com>
Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
  • Loading branch information
Andre Detsch authored and Arnd Bergmann committed Dec 19, 2007
1 parent 3ce2f62 commit a0a7ae8
Showing 1 changed file with 8 additions and 3 deletions.
11 changes: 8 additions & 3 deletions arch/powerpc/platforms/cell/spu_manage.c
Original file line number Diff line number Diff line change
Expand Up @@ -411,10 +411,15 @@ static void init_affinity_qs20_harcoded(void)

static int of_has_vicinity(void)
{
struct spu* spu;
struct device_node *dn;

spu = list_first_entry(&cbe_spu_info[0].spus, struct spu, cbe_list);
return of_find_property(spu_devnode(spu), "vicinity", NULL) != NULL;
for_each_node_by_type(dn, "spe") {
if (of_find_property(dn, "vicinity", NULL)) {
of_node_put(dn);
return 1;
}
}
return 0;
}

static struct spu *devnode_spu(int cbe, struct device_node *dn)
Expand Down

0 comments on commit a0a7ae8

Please sign in to comment.