aboutsummaryrefslogtreecommitdiff
path: root/hw/homer.c
diff options
context:
space:
mode:
authorStewart Smith <stewart@linux.ibm.com>2019-06-18 17:29:13 +1000
committerStewart Smith <stewart@linux.ibm.com>2019-06-24 15:59:07 +1000
commitbfe3f8aa3618abc78a118e46afe5c7d1e915cfa8 (patch)
tree29895e68252e2d510c127e3d451e14260bef8f3b /hw/homer.c
parent30ea4db09c7cfde3ce12983f6a38bdf9b616287d (diff)
downloadskiboot-bfe3f8aa3618abc78a118e46afe5c7d1e915cfa8.zip
skiboot-bfe3f8aa3618abc78a118e46afe5c7d1e915cfa8.tar.gz
skiboot-bfe3f8aa3618abc78a118e46afe5c7d1e915cfa8.tar.bz2
host_services_occ_base_setup is core homer code not host_services
Signed-off-by: Stewart Smith <stewart@linux.ibm.com>
Diffstat (limited to 'hw/homer.c')
-rw-r--r--hw/homer.c25
1 files changed, 25 insertions, 0 deletions
diff --git a/hw/homer.c b/hw/homer.c
index 34ee337..964a6e0 100644
--- a/hw/homer.c
+++ b/hw/homer.c
@@ -157,6 +157,31 @@ static void homer_init_chip(struct proc_chip *chip)
}
}
+
+static void host_services_occ_base_setup(void)
+{
+ struct proc_chip *chip;
+ uint64_t occ_common;
+
+ chip = next_chip(NULL); /* Frist chip */
+ occ_common = (uint64_t) local_alloc(chip->id, OCC_COMMON_SIZE, OCC_COMMON_SIZE);
+
+ for_each_chip(chip) {
+ chip->occ_common_base = occ_common;
+ chip->occ_common_size = OCC_COMMON_SIZE;
+
+ chip->homer_base = (uint64_t) local_alloc(chip->id, HOMER_IMAGE_SIZE,
+ HOMER_IMAGE_SIZE);
+ chip->homer_size = HOMER_IMAGE_SIZE;
+ memset((void *)chip->homer_base, 0, chip->homer_size);
+
+ prlog(PR_DEBUG, "HBRT: Chip %d HOMER base %016llx : %08llx\n",
+ chip->id, chip->homer_base, chip->homer_size);
+ prlog(PR_DEBUG, "HBRT: OCC common base %016llx : %08llx\n",
+ chip->occ_common_base, chip->occ_common_size);
+ }
+}
+
void homer_init(void)
{
struct proc_chip *chip;