summaryrefslogtreecommitdiffstats
path: root/src/import/chips/p9/procedures/hwp/lib/p9_pstates_occ.h
diff options
context:
space:
mode:
authorPrasad Bg Ranganath <prasadbgr@in.ibm.com>2017-04-19 06:04:17 -0500
committerDaniel M. Crowell <dcrowell@us.ibm.com>2017-05-04 17:12:49 -0400
commitbda26a5a534e6bd849331541191e15f5a1d76305 (patch)
treebded2be981d0e43f9e746330d64f19dac8095c10 /src/import/chips/p9/procedures/hwp/lib/p9_pstates_occ.h
parent3a32bbd54815b9a6a09da2349fb56c8aad98341a (diff)
downloadtalos-hostboot-bda26a5a534e6bd849331541191e15f5a1d76305.tar.gz
talos-hostboot-bda26a5a534e6bd849331541191e15f5a1d76305.zip
WOF: Additional fields needed in OCC Pstate Parameter block for WOF
Change-Id: I7718a529b8754ffc6fd8fdeb957eccee563110b6 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/39415 Tested-by: PPE CI <ppe-ci+hostboot@us.ibm.com> Reviewed-by: Michael S. Floyd <mfloyd@us.ibm.com> Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Reviewed-by: Gregory S. Still <stillgs@us.ibm.com> Reviewed-by: Jennifer A. Stofer <stofer@us.ibm.com> Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/39419 Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Diffstat (limited to 'src/import/chips/p9/procedures/hwp/lib/p9_pstates_occ.h')
-rw-r--r--src/import/chips/p9/procedures/hwp/lib/p9_pstates_occ.h31
1 files changed, 25 insertions, 6 deletions
diff --git a/src/import/chips/p9/procedures/hwp/lib/p9_pstates_occ.h b/src/import/chips/p9/procedures/hwp/lib/p9_pstates_occ.h
index fbcc909f0..acae42877 100644
--- a/src/import/chips/p9/procedures/hwp/lib/p9_pstates_occ.h
+++ b/src/import/chips/p9/procedures/hwp/lib/p9_pstates_occ.h
@@ -98,11 +98,14 @@ typedef struct
/// WOF Iddq Margin (aging factor) in 0.01% units
uint16_t wof_iddq_margin_factor;
- /// Temperature Scale Factor per 10C in 0.01% units
- uint16_t temperature_scale_factor;
+ /// VDD Temperature Scale Factor per 10C in 0.01% units
+ uint16_t vdd_temperature_scale_factor;
+
+ /// VDN Temperature Scale Factor per 10C in 0.01% units
+ uint16_t vdn_temperature_scale_factor;
/// Spare
- uint8_t spare[10];
+ uint8_t spare[8];
/// IVDD ALL Good Cores ON; 6.25mA units
iddq_entry_t ivdd_all_good_cores_on_caches_on[IDDQ_MEASUREMENTS];
@@ -133,11 +136,15 @@ typedef struct
avgtemp_entry_t avgtemp_quad_good_cores_on[MAXIMUM_QUADS][IDDQ_MEASUREMENTS];
/// avgtempN ; 6.25mA units
- avgtemp_entry_t avgtemp_vdn;
+ avgtemp_entry_t avgtemp_vdn[IDDQ_MEASUREMENTS];
/// spare (per MVPD documentation
- uint8_t spare_1[43];
-
+ ///
+ /// NOTE: The MVPD documentation defines 43 spare bytes to lead to a 255B structure. However,
+ /// some consuming code already assumed a 250B structure and the correction of this size was disruptive.
+ /// This is not a problem until the IQ keyword actually defines these bytes at which time a keyword
+ /// version update will be need. Thus, this structure will remain at 250B.
+ uint8_t spare_1[38];
} IddqTable;
@@ -187,6 +194,18 @@ typedef struct
/// Nest frequency in Mhz. This is used by FIT interrupt
uint32_t nest_frequency_mhz;
+
+ //Nest leakage percentage used to calculate the Core leakage
+ uint16_t nest_leakage_percent;
+
+ uint16_t ceff_tdp_vdn;
+
+ // AC tdp vdd turbo
+ uint16_t lac_tdp_vdd_turbo_10ma;
+
+ // AC tdp vdd nominal
+ uint16_t lac_tdp_vdd_nominal_10ma;
+
} __attribute__((aligned(128))) OCCPstateParmBlock;
#ifdef __cplusplus
OpenPOWER on IntegriCloud