From 1cb7b37c93066f5aa9bf5c5b2dbab0ae9bb7565c Mon Sep 17 00:00:00 2001 From: Vaidyanathan Srinivasan Date: Wed, 4 Aug 2021 12:50:45 +0530 Subject: Basic P10 stop state support Adds support for STOP0 lite, STOP2 and STOP3 for Power10 with the following latencies, residency requirements: latency residency stop0lite 1us 10us stop0 10us 100us stop2 20us 200us stop3 45us 450us Signed-off-by: Vaidyanathan Srinivasan Signed-off-by: Pratik R. Sampat Signed-off-by: Vasant Hegde --- hw/homer.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'hw/homer.c') 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; }; -- cgit v1.1