aboutsummaryrefslogtreecommitdiff
path: root/hw/homer.c
diff options
context:
space:
mode:
Diffstat (limited to 'hw/homer.c')
-rw-r--r--hw/homer.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/hw/homer.c b/hw/homer.c
index c5dbd58..3ff6ed1 100644
--- a/hw/homer.c
+++ b/hw/homer.c
@@ -15,6 +15,9 @@
#define P9_PBA_BAR0 0x5012B00
#define P9_PBA_BARMASK0 0x5012B04
+#define P10_PBA_BAR0 0x01010CDA
+#define P10_PBA_BARMASK0 0x01010CDE
+
#define PBA_MASK_ALL_BITS 0x000001FFFFF00000ULL /* Bits 23:43 */
enum P8_BAR {
@@ -31,6 +34,13 @@ enum P9_BAR {
P9_BAR_SBE = 3,
};
+enum P10_BAR {
+ P10_BAR_HOMER = 0,
+ P10_BAR_OCMB_THERMAL = 1,
+ P10_BAR_OCC_COMMON = 2,
+ P10_BAR_SBE = 3,
+};
+
static u64 pba_bar0, pba_barmask0;
static u8 bar_homer, bar_slw, bar_occ_common;
@@ -190,6 +200,12 @@ void homer_init(void)
bar_homer = P9_BAR_HOMER;
bar_occ_common = P9_BAR_OCC_COMMON;
break;
+ case proc_gen_p10:
+ pba_bar0 = P10_PBA_BAR0;
+ pba_barmask0 = P10_PBA_BARMASK0;
+ bar_homer = P10_BAR_HOMER;
+ bar_occ_common = P10_BAR_OCC_COMMON;
+ break;
default:
return;
};