diff options
author | mbroyles <mbroyles@us.ibm.com> | 2017-07-17 11:37:02 -0500 |
---|---|---|
committer | Martha Broyles <mbroyles@us.ibm.com> | 2017-07-19 17:07:26 -0400 |
commit | 67f48d4762cb76729fbff9063ef561de1118797d (patch) | |
tree | c682c47d8182ffc5435d3e47949186acfcc9e79f /src/occ_405/proc/proc_pstate.h | |
parent | 98f0808d83bccd4403a2082115c705e7762305af (diff) | |
download | talos-occ-67f48d4762cb76729fbff9063ef561de1118797d.tar.gz talos-occ-67f48d4762cb76729fbff9063ef561de1118797d.zip |
Fix excessive traces for BCE requests, slave data collection and opal updates
Correct power cap information in OPAL shared memory
Add non-zero error history counts to poll response
Fix Characterization to Active State change failure
Change-Id: I92b783b631e79786e6190a4def520fee32c2cc7c
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/43216
Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com>
Reviewed-by: Christopher J. Cain <cjcain@us.ibm.com>
Reviewed-by: William A. Bryan <wilbryan@us.ibm.com>
Diffstat (limited to 'src/occ_405/proc/proc_pstate.h')
-rwxr-xr-x | src/occ_405/proc/proc_pstate.h | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/src/occ_405/proc/proc_pstate.h b/src/occ_405/proc/proc_pstate.h index ac7de35..0126d1d 100755 --- a/src/occ_405/proc/proc_pstate.h +++ b/src/occ_405/proc/proc_pstate.h @@ -94,14 +94,14 @@ typedef struct __attribute__ ((packed)) uint16_t min_power_cap; uint16_t max_power_cap; uint16_t current_power_cap; - + uint16_t soft_min_power_cap; } opal_dynamic_t; // This size must be a multiple of 128 typedef struct __attribute__ ((packed)) { - opal_dynamic_t dynamic; // Dynamic OPAL parameters: 16B - uint8_t pad[112]; // Reserved dynamic space: 112B + opal_dynamic_t dynamic; // Dynamic OPAL parameters: 18B + uint8_t pad[110]; // Reserved dynamic space: 110B } opal_dynamic_table_t __attribute__ ((aligned (128))); #define PSTATE_ENTRIES 256 // number of generated PSTATES entries in OPAL table @@ -125,6 +125,18 @@ extern uint8_t G_desired_pstate[MAXIMUM_QUADS]; extern opal_dynamic_table_t G_opal_dynamic_table; extern opal_static_table_t G_opal_static_table; +// States for updating opal data in main memory +typedef enum +{ + OPAL_TABLE_UPDATE_IDLE = 0x00, // No dynmaic table update in process + OPAL_TABLE_UPDATE_DYNAMIC_COPY = 0x01, // BCE scheduled to copy dynamic date to main memory + OPAL_TABLE_UPDATE_NOTIFY_HOST = 0x02, // BCE copy finished notify host + OPAL_TABLE_UPDATE_BCE_FAIL = 0x03, // BCE failed, retry + OPAL_TABLE_UPDATE_CRITICAL_ERROR = 0x04, // Critical BCE error, stop trying to update dynamic data +} OPAL_TABLE_UPDATE_STATE; + +extern volatile uint8_t G_opal_table_update_state; + // Helper function to translate from Frequency to nearest Pstate Pstate proc_freq2pstate(uint32_t i_freq_mhz); |