aboutsummaryrefslogtreecommitdiff
path: root/core
diff options
context:
space:
mode:
authorHaren Myneni <haren@linux.ibm.com>2021-08-04 12:50:53 +0530
committerVasant Hegde <hegdevasant@linux.vnet.ibm.com>2021-08-06 12:20:48 +0530
commit2ce3f083f3999483e202ea6868d55fcb0ad61db1 (patch)
tree20730e2dfd5bd65767f23e8e86c49dae3ea40486 /core
parentd7ffcd939d971bdffc9e50bf7886345c9536d68c (diff)
downloadskiboot-2ce3f083f3999483e202ea6868d55fcb0ad61db1.zip
skiboot-2ce3f083f3999483e202ea6868d55fcb0ad61db1.tar.gz
skiboot-2ce3f083f3999483e202ea6868d55fcb0ad61db1.tar.bz2
hdat/spira: Define ibm, primary-topology-index property per chip
HDAT provides Topology ID table and the primary topology location on P10. This primary location points to primary topology entry in ID table which contains the primary topology index and this index is used to define the paste base address per chip. This patch reads Topology ID table and the primary topology location from hdata and retrieves the primary topology index in the ID table. Make this primaty topology index value available with ibm,primary-topology-index property per chip. VAS reads this property to setup paste base address for each chip. Signed-off-by: Haren Myneni <haren@linux.ibm.com> Signed-off-by: Vasant Hegde <hegdevasant@linux.vnet.ibm.com>
Diffstat (limited to 'core')
-rw-r--r--core/chip.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/core/chip.c b/core/chip.c
index a4ba324..2d95b2e 100644
--- a/core/chip.c
+++ b/core/chip.c
@@ -133,6 +133,9 @@ static void init_chip(struct dt_node *dn)
if (lc)
chip->loc_code = strdup(lc);
+ chip->primary_topology = dt_prop_get_u32_def(dn,
+ "ibm,primary-topology-index", 0xffffffff);
+
prlog(PR_INFO, "CHIP: Initialised chip %d from %s\n", id, dn->name);
chips[id] = chip;
}