Skip to content

Commit

Permalink
PM: refine enablement attributes for advanced functions (VDM,RESCLK,W…
Browse files Browse the repository at this point in the history
…OF,IVRM)

- Move to a "disable feature" attribute paradigm for SYSTEM control
- Add consistent system enablement (eg Cronus, MRW) control attributes
- Added HWP attributes to allow p9_pstate_parameter_block to indicate
  validation status to p9_hcode_image_build for Hcode header updates
- Mark attributes as deprecated for future removal
- Added HB system defaults to auto enable RESCLK, VDM and WOF.  IVRM is
  disabled.
    - RESCLK only has override attributes so will enable function once code
      that looks the attributes is in a driver
    - VDM enablement forces the need for #W to be there and valid.  Valid will
      be if #W is all zero, disable VDMs;  if any of #W is non-zerom, failing
      validity checks (non-decreasing VID Compares) will fail the IPL.
    - WOF enablement needs IQ to fill out the OCC parameter block.  If
      not present, WOF is disabled.  Longer term (future commit), RESCLKs and
      VDMs will also gate WOF but not for early development and testing.
- Add a Chip EC attribute to discern the DD levels that WOF is supported
- Move to IVRM vs IVRMS
- Made all *ENABLED HWP attributes PROC_CHIP in scope to avoid collisions from
  multiple chip targets
- Made all HWP attributes writeable
- Deprecate (preped rename) an HWP attribute
- Added throttle control attributes

Change-Id: I5e56a36a9e2a4b3e6964ed66ff5c1013be26ed33
RTC: 173673
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/40063
Dev-Ready: Gregory S. Still <stillgs@us.ibm.com>
Tested-by: PPE CI <ppe-ci+hostboot@us.ibm.com>
Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com>
Reviewed-by: Michael S. Floyd <mfloyd@us.ibm.com>
Tested-by: Hostboot CI <hostboot-ci+hostboot@us.ibm.com>
Reviewed-by: CHRISTOPHER M. RIEDL <cmriedl@us.ibm.com>
Reviewed-by: Matt K. Light <mklight@us.ibm.com>
Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Reviewed-by: Jennifer A. Stofer <stofer@us.ibm.com>
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/40089
Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com>
  • Loading branch information
stillgs authored and dcrowell77 committed Jun 9, 2017
1 parent 1b6b503 commit 3f21550
Show file tree
Hide file tree
Showing 6 changed files with 744 additions and 111 deletions.
Expand Up @@ -3619,8 +3619,24 @@
</chip>
</chipEcFeature>
</attribute>

<!-- ******************************************************************** -->
<!-- ******************************************************************** -->
<attribute>
<id>ATTR_CHIP_EC_FEATURE_WOF_NOT_SUPPORTED</id>
<targetType>TARGET_TYPE_PROC_CHIP</targetType>
<description>
Work Load Optimized Frequency non-support in manufacturing.
</description>
<chipEcFeature>
<chip>
<name>ENUM_ATTR_NAME_NIMBUS</name>
<ec>
<value>0x20</value>
<test>LESS_THAN</test>
</ec>
</chip>
</chipEcFeature>
</attribute>
<!-- ******************************************************************** -->
<attribute>
<id>ATTR_CHIP_EC_FEATURE_DD1_ANALOG</id>
<targetType>TARGET_TYPE_PROC_CHIP</targetType>
Expand Down
Expand Up @@ -5,7 +5,7 @@
<!-- -->
<!-- OpenPOWER HostBoot Project -->
<!-- -->
<!-- Contributors Listed Below - COPYRIGHT 2016 -->
<!-- Contributors Listed Below - COPYRIGHT 2016,2017 -->
<!-- [+] International Business Machines Corp. -->
<!-- -->
<!-- -->
Expand Down Expand Up @@ -327,4 +327,106 @@
<writeable/>
</attribute>
<!-- ********************************************************************* -->
<attribute>
<id>ATTR_PSTATES_ENABLED</id>
<targetType>TARGET_TYPE_PROC_CHIP</targetType>
<description>Indicator that all relevant attributes and required data for
Pstates to be enabled is present and valid

Producer: p9_build_pstate_datablock

Consumers: p9_pm_pstate_gpe_init
</description>
<valueType>uint8</valueType>
<enum>FALSE=0, TRUE=1</enum>
<writeable/>
<initToZero/>
</attribute>
<!-- ********************************************************************* -->
<attribute>
<id>ATTR_RESCLK_ENABLED</id>
<targetType>TARGET_TYPE_PROC_CHIP</targetType>
<description>Indicator that all relevant attributes and required data for
Resonant Clocking to be enabled is present and valid

Producer: p9_build_pstate_datablock

Consumers: p9_hcode_image_build ->
PGPE Header
CME Header
</description>
<valueType>uint8</valueType>
<enum>FALSE=0, TRUE=1</enum>
<writeable/>
<initToZero/>
</attribute>
<!-- ********************************************************************* -->
<attribute>
<id>ATTR_VDM_ENABLED</id>
<targetType>TARGET_TYPE_PROC_CHIP</targetType>
<description>Indicator that all relevant attributes and required data for
Voltage Droop Monitors (VDM) to be enabled is present and valid

Producer: p9_build_pstate_datablock

Consumers: p9_hcode_image_build ->
SGPE Header
CME Header
</description>
<valueType>uint8</valueType>
<enum>FALSE=0, TRUE=1</enum>
<writeable/>
<initToZero/>
</attribute>
<!-- ********************************************************************* -->
<attribute>
<id>ATTR_IVRMS_ENABLED</id>
<targetType>TARGET_TYPE_PROC_CHIP</targetType>
<description>
<!-- @todo RTC 173736 -->
!!!!! Deprecated for ATTR_IVRM_ENABLED
!!!!! Will be removed in the future
</description>
<valueType>uint8</valueType>
<enum>FALSE=0, TRUE=1</enum>
<writeable/>
<initToZero/>
</attribute>
<!-- ********************************************************************* -->
<attribute>
<id>ATTR_IVRM_ENABLED</id>
<targetType>TARGET_TYPE_PROC_CHIP</targetType>
<description>Indicator that all relevant attributes and required data for
Internal Voltage Regulator Macros (IVRMs) to be enabled is present and valid

Producer: p9_build_pstate_datablock

Consumers: p9_hcode_image_build ->
PGPE Header
CME Header
</description>
<valueType>uint8</valueType>
<enum>FALSE=0, TRUE=1</enum>
<writeable/>
<initToZero/>
</attribute>
<!-- ********************************************************************* -->
<attribute>
<id>ATTR_WOF_ENABLED</id>
<targetType>TARGET_TYPE_PROC_CHIP</targetType>
<description>Indicator that all relevent attributes and required data for
WOF to be enabled is present and valid

Producer: p9_build_pstate_datablock

Consumers: p9_hcode_image_build ->
PGPE Header
CME Header
</description>
<valueType>uint8</valueType>
<enum>FALSE=0, TRUE=1</enum>
<writeable/>
<initToZero/>
</attribute>
<!-- ********************************************************************* -->
</attributes>

0 comments on commit 3f21550

Please sign in to comment.