diff options
author | Andres Lugo-Reyes <aalugore@us.ibm.com> | 2016-10-04 14:43:01 -0500 |
---|---|---|
committer | William G. Hoffa <wghoffa@us.ibm.com> | 2016-12-09 11:23:15 -0500 |
commit | d311df36656590b7f9a0dd674e81e2e87b4952f4 (patch) | |
tree | 1c5b7491ffab69fb567e9fa79532d73afa8b202f /src/usr/htmgt/htmgt_cfgdata.H | |
parent | 1074ed361ea8d975e5eb330046c64077d229404f (diff) | |
download | talos-hostboot-d311df36656590b7f9a0dd674e81e2e87b4952f4.tar.gz talos-hostboot-d311df36656590b7f9a0dd674e81e2e87b4952f4.zip |
HTMGT: OCC Initialization
Contains the changes for p9 OCC init. Mostly
a port from p8. New cmd/rsp buffers and data format
for packets. This commit also makes HTMGT fapi2
compatible.
Change-Id: I6182163e569ac97f06e3ddfbb69deab90e849de3
RTC:133945
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/31010
Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com>
Reviewed-by: Martin Gloff <mgloff@us.ibm.com>
Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com>
Reviewed-by: Christopher J. Cain <cjcain@us.ibm.com>
Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com>
Reviewed-by: William G. Hoffa <wghoffa@us.ibm.com>
Diffstat (limited to 'src/usr/htmgt/htmgt_cfgdata.H')
-rw-r--r-- | src/usr/htmgt/htmgt_cfgdata.H | 35 |
1 files changed, 15 insertions, 20 deletions
diff --git a/src/usr/htmgt/htmgt_cfgdata.H b/src/usr/htmgt/htmgt_cfgdata.H index f5290bacf..a6c746805 100644 --- a/src/usr/htmgt/htmgt_cfgdata.H +++ b/src/usr/htmgt/htmgt_cfgdata.H @@ -5,7 +5,7 @@ /* */ /* OpenPOWER HostBoot Project */ /* */ -/* Contributors Listed Below - COPYRIGHT 2014,2015 */ +/* Contributors Listed Below - COPYRIGHT 2014,2016 */ /* [+] International Business Machines Corp. */ /* */ /* */ @@ -36,18 +36,15 @@ namespace HTMGT enum occCfgDataFormat { OCC_CFGDATA_NO_REQUEST = 0x00, // no request for config data - OCC_CFGDATA_PSTATE_SSTRUCT = 0x01, // Psate Super Structure OCC_CFGDATA_FREQ_POINT = 0x02, // Frequency Operating Points OCC_CFGDATA_OCC_ROLE = 0x03, // OCC Role OCC_CFGDATA_APSS_CONFIG = 0x04, // APSS Config OCC_CFGDATA_MEM_CONFIG = 0x05, // Memory Configuration - OCC_CFGDATA_FIR_SCOMS = 0x06, // FIR Scoms Table OCC_CFGDATA_PCAP_CONFIG = 0x07, // PCAP Config OCC_CFGDATA_SYS_CONFIG = 0x0F, // System Configuration OCC_CFGDATA_MEM_THROTTLE = 0x12, // Memory Throttle Settings OCC_CFGDATA_TCT_CONFIG = 0x13, // Thermal Control Treshold - OCC_CFGDATA_WOF_CORE_FREQ = 0x30, // WOF Core Frequency Data - OCC_CFGDATA_WOF_VRM_EFF = 0x31, // WOF VRM Efficiency Data + OCC_CFGDATA_AVSBUS_CONFIG = 0x14, // AVSBus Config OCC_CFGDATA_FORMAT_END, // Marker to indicate last entry OCC_CFGDATA_CLEAR_ALL = 0xFF, // Clear All Active Config Data @@ -59,7 +56,7 @@ namespace HTMGT //KVM mode + single node OCC_CFGDATA_OPENPOWER_SYSTEMTYPE = 0x81, - CFGDATA_CORES = 12, + CFGDATA_CORES = 24, CFGDATA_FRU_TYPE_PROC = 0x00, CFGDATA_FRU_TYPE_MEMBUF = 0x01, @@ -97,19 +94,17 @@ namespace HTMGT } }; + // TODO: RTC 164403 add AVSBUS cfg data once OCC support is in place const occCfgDataTable_t occCfgDataTable[] = { { OCC_CFGDATA_SYS_CONFIG, TARGET_ALL, TO_20SEC, CFGSTATE_ALL }, { OCC_CFGDATA_APSS_CONFIG, TARGET_ALL, TO_20SEC, CFGSTATE_ALL }, { OCC_CFGDATA_OCC_ROLE, TARGET_ALL, TO_20SEC,CFGSTATE_STANDBY }, - { OCC_CFGDATA_PSTATE_SSTRUCT, TARGET_ALL, TO_20SEC, CFGSTATE_SBYOBS }, { OCC_CFGDATA_FREQ_POINT, TARGET_MASTER,TO_20SEC, CFGSTATE_SBYOBS }, { OCC_CFGDATA_MEM_CONFIG, TARGET_ALL, TO_20SEC, CFGSTATE_ALL }, { OCC_CFGDATA_PCAP_CONFIG, TARGET_MASTER, TO_20SEC, CFGSTATE_ALL }, { OCC_CFGDATA_MEM_THROTTLE, TARGET_ALL, TO_20SEC, CFGSTATE_ALL }, { OCC_CFGDATA_TCT_CONFIG, TARGET_ALL, TO_20SEC, CFGSTATE_ALL }, - { OCC_CFGDATA_WOF_CORE_FREQ, TARGET_ALL, TO_20SEC, CFGSTATE_SBYOBS }, - { OCC_CFGDATA_WOF_VRM_EFF, TARGET_ALL, TO_20SEC, CFGSTATE_SBYOBS } }; const size_t OCC_CONFIG_TABLE_SIZE = sizeof(occCfgDataTable) / sizeof(occCfgDataTable_t); @@ -210,6 +205,17 @@ namespace HTMGT /** + * Fills in the AVSBus Configuration Data message buffer + * + * @param[in] i_occ - the OCC target + * @param[out] o_data - preallocated buffer to fill in + * @param[out] o_size - set to the message size + * @pre o_data is large enough. + */ + void getAVSBusConfigMessageData(const TARGETING::TargetHandle_t i_occ, + uint8_t* o_data, uint64_t & o_size); + + /** * Fill in the Frequency Point Configuration Data * message buffer. * @@ -221,17 +227,6 @@ namespace HTMGT uint64_t & o_size); /** - * Read pstate data from attribute and build occcmd message - * @param[in] The OCC TARGETING::Target - * @param[out] The occ cmd message - * @param[in/out] In: Byte size of the o_data area. Out: Byte size of - * the occ cmd message. - */ - void getPstateTableMessageData(const TARGETING::TargetHandle_t i_occTarget, - uint8_t* o_data, - uint64_t & io_size); - - /** * Generate the APSS configuration message * @param[out] The APSS cfg message * @param[in/out] In: Byte size of the o_data area. Out: Byte size of |