Commit fa7f374b authored by Christian Krafft's avatar Christian Krafft Committed by Paul Mackerras

[POWERPC] spu_manage: Use newer physical-id attribute

Legacy device tree used the reg property for the physical id of an
spe.  On newer device tree layouts the reg property contains the
"correct" value in the reg attribute.  So there has been intoduced the
"physical-id" on newer devicetree layouts.  The id is stored by
spu_manage into the spu struct as spe_id.  cbe_thermal has been
changed to use the spu->spe_id.  There's no need for the thermal code
to check devicetree attributes for itself.
Signed-off-by: default avatarChristian Krafft <krafft@de.ibm.com>
Cc: Jeremy Kerr <jk@ozlabs.org>
Signed-off-by: default avatarArnd Bergmann <arnd.bergmann@de.ibm.com>
Signed-off-by: default avatarPaul Mackerras <paulus@samba.org>
parent dfa70f81
...@@ -88,17 +88,13 @@ static struct cbe_pmd_regs __iomem *get_pmd_regs(struct sys_device *sysdev) ...@@ -88,17 +88,13 @@ static struct cbe_pmd_regs __iomem *get_pmd_regs(struct sys_device *sysdev)
/* returns the value for a given spu in a given register */ /* returns the value for a given spu in a given register */
static u8 spu_read_register_value(struct sys_device *sysdev, union spe_reg __iomem *reg) static u8 spu_read_register_value(struct sys_device *sysdev, union spe_reg __iomem *reg)
{ {
const unsigned int *id;
union spe_reg value; union spe_reg value;
struct spu *spu; struct spu *spu;
/* getting the id from the reg attribute will not work on future device-tree layouts
* in future we should store the id to the spu struct and use it here */
spu = container_of(sysdev, struct spu, sysdev); spu = container_of(sysdev, struct spu, sysdev);
id = of_get_property(spu_devnode(spu), "reg", NULL);
value.val = in_be64(&reg->val); value.val = in_be64(&reg->val);
return value.spe[*id]; return value.spe[spu->spe_id];
} }
static ssize_t spu_show_temp(struct sys_device *sysdev, char *buf) static ssize_t spu_show_temp(struct sys_device *sysdev, char *buf)
......
...@@ -48,7 +48,7 @@ static u64 __init find_spu_unit_number(struct device_node *spe) ...@@ -48,7 +48,7 @@ static u64 __init find_spu_unit_number(struct device_node *spe)
{ {
const unsigned int *prop; const unsigned int *prop;
int proplen; int proplen;
prop = of_get_property(spe, "unit-id", &proplen); prop = of_get_property(spe, "physical-id", &proplen);
if (proplen == 4) if (proplen == 4)
return (u64)*prop; return (u64)*prop;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment