[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20070828162011.5356afaa@localhost>
Date: Tue, 28 Aug 2007 16:20:11 +0200
From: Christian Krafft <krafft@...ibm.com>
To: Arnd Bergmann <arnd@...db.de>
Cc: kou.ishizaki@...hiba.co.jp, linuxppc-dev@...abs.org,
linux-kernel@...r.kernel.org, cbe-oss-dev@...abs.org,
jk@...abs.org, krafft@...ibm.com
Subject: Re: [Cbe-oss-dev] [patch 1/5] spu_manage: use newer physical-id
On Thu, 23 Aug 2007 18:12:19 +0200
Arnd Bergmann <arnd@...db.de> wrote:
> On Thursday 23 August 2007, kou.ishizaki@...hiba.co.jp wrote:
> > Please check "unit-id" if "physical-id" doesn't exist. Because Celleb
> > uses "unit-id" to provide spe_id.
Sorry for the late answer, wasn't on cc
and had to receive all mails of the last 6 month once again :-(
Can you check if the patch below is working with celleb device tree ?
------
Subject: spu_manage: fix spu_unit_number for celleb device tree
From: Christian Krafft <krafft@...ibm.com>
New device trees provide "physical-id".
Celleb device tree provide the "unit-id".
Legacy device tree used the reg property for the physical id of an spe.
This patch fixes find_spu_unit_number to look for the spu id in that order.
The length is checked to avoid misinterpretation in case the attributes
unit-id or reg do not contain the id.
Signed-off-by: Christian Krafft <krafft@...ibm.com>
Index: linux/arch/powerpc/platforms/cell/spu_manage.c
===================================================================
--- linux.orig/arch/powerpc/platforms/cell/spu_manage.c
+++ linux/arch/powerpc/platforms/cell/spu_manage.c
@@ -48,10 +48,18 @@ static u64 __init find_spu_unit_number(s
{
const unsigned int *prop;
int proplen;
+
+ /* new device trees should provide the physical-id attribute */
prop = of_get_property(spe, "physical-id", &proplen);
if (proplen == 4)
return (u64)*prop;
+ /* celleb device tree provides the unit-id */
+ prop = of_get_property(spe, "unit-id", &proplen);
+ if (proplen == 4)
+ return (u64)*prop;
+
+ /* legacy device trees provide the id in the reg attribute */
prop = of_get_property(spe, "reg", &proplen);
if (proplen == 4)
return (u64)*prop;
--
Mit freundlichen GrĂ¼ssen,
kind regards,
Christian Krafft
IBM Systems & Technology Group,
Linux Kernel Development
IT Specialist
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists