[CELL] cell: indexing of SPUs based on firmware vicinity properties
commit9e7cbcbb6ede4299d52c839e352aae527c06124a
authorArnd Bergmann <arnd@arndb.de>
Fri, 20 Jul 2007 19:39:50 +0000 (20 21:39 +0200)
committerArnd Bergmann <arnd@klappe.arndb.de>
Fri, 20 Jul 2007 19:42:18 +0000 (20 21:42 +0200)
treeb935ab88fa5367afd74d310eee329a3f0d708a7b
parentcbc23d3e7cb3c9fd3c9fce0bc3f44f687a9517c0
[CELL] cell: indexing of SPUs based on firmware vicinity properties

This patch links spus according to their physical position using
information provided by the firmware through a special vicinity
device-tree property. This property is present in current version
of Malta firmware.

Example of vicinity properties for a node in Malta:

Node:        Vicinity property contains phandles of:
spe@0        [ spe@100000 , mic-tm@50a000 ]
spe@100000   [ spe@0      , spe@200000    ]
spe@200000   [ spe@100000 , spe@300000    ]
spe@300000   [ spe@200000 , bif0@512000   ]
spe@80000    [ spe@180000 , mic-tm@50a000 ]
spe@180000   [ spe@80000  , spe@280000    ]
spe@280000   [ spe@180000 , spe@380000    ]
spe@380000   [ spe@280000 , bif0@512000   ]

Only spe@* have a vicinity property (e.g., bif0@512000 and
mic-tm@50a000 do not have it).

Signed-off-by: Andre Detsch <adetsch@br.ibm.com>
Signed-off-by: Arnd Bergmann <arnd.bergmann@de.ibm.com>
arch/powerpc/platforms/cell/spu_base.c