summaryrefslogtreecommitdiffstats
path: root/src/import/hwpf/fapi2
diff options
context:
space:
mode:
Diffstat (limited to 'src/import/hwpf/fapi2')
-rw-r--r--src/import/hwpf/fapi2/include/fapi2_vpd_access.H24
-rw-r--r--src/import/hwpf/fapi2/xml/attribute_info/hb_temp_defaults.xml9
-rw-r--r--src/import/hwpf/fapi2/xml/attribute_info/system_attributes.xml13
3 files changed, 35 insertions, 11 deletions
diff --git a/src/import/hwpf/fapi2/include/fapi2_vpd_access.H b/src/import/hwpf/fapi2/include/fapi2_vpd_access.H
index b1d889b6a..daf8b006f 100644
--- a/src/import/hwpf/fapi2/include/fapi2_vpd_access.H
+++ b/src/import/hwpf/fapi2/include/fapi2_vpd_access.H
@@ -33,28 +33,32 @@
namespace fapi2
{
+/// constants for VPD Info
+constexpr uint64_t VPD_INFO_INVALID = 0xffffffffffffffff;
+
/// @brief Specialized class representing required VPDInfo to be used
-/// in collecting VPD for the MCS target type.
-/// @tparam T fapi2::TARGET_TYPE_MCS
+/// in collecting VPD for the MCA target type.
+/// @tparam T fapi2::TARGET_TYPE_MCA
template<>
-class VPDInfo<TARGET_TYPE_MCS>
+class VPDInfo<TARGET_TYPE_MCA>
{
public:
// @brief VPDInfo constructor
VPDInfo( const fapi2::MemVpdData& i_vpd_type)
: iv_vpd_type(i_vpd_type),
- iv_size(0), iv_freq(0), iv_rank_count_dimm_0(0),
- iv_rank_count_dimm_1(0), iv_dimm_drop_per_port(0)
+ iv_size(VPD_INFO_INVALID),
+ iv_freq_mhz(VPD_INFO_INVALID),
+ iv_rank_count_dimm_0(VPD_INFO_INVALID),
+ iv_rank_count_dimm_1(VPD_INFO_INVALID)
{};
// type of vpd field to return
fapi2::MemVpdData_t iv_vpd_type;
// size of the vpd data
size_t iv_size;
- uint64_t iv_freq;
+ uint64_t iv_freq_mhz;
uint64_t iv_rank_count_dimm_0;
uint64_t iv_rank_count_dimm_1;
- uint64_t iv_dimm_drop_per_port;
};
@@ -67,15 +71,15 @@ class VPDInfo<TARGET_TYPE_MCS>
/// @note passing nullptr for o_blob will return the size of the keyword
///
/// Example:
-/// fapi2::VPDInfo<fapi2::TARGET_TYPE_MCS> vpdInfo(MR_keyword);
-/// vpdInfo.iv_speed_bin = 2400_SPEED_BIN;
+/// fapi2::VPDInfo<fapi2::TARGET_TYPE_MCA> vpdInfo(MR_keyword);
+/// vpdInfo.iv_freq = 2667;
///
/// uint8_t * blob = NULL;
///
/// FAPI_TRY(getVPD( mcs, vpdInfo, blob ));
/// blob = static_cast<uint8_t *>(malloc(vpdInfo.iv_size));
/// FAPI_TRY(getVPD( mcs, vpdInfo, blob ));
-/// blob now contains the VPD data for the MCS.
+/// blob now contains the VPD data for the MCA.
///
template<TargetType T>
ReturnCode getVPD(const Target<T>& i_target,
diff --git a/src/import/hwpf/fapi2/xml/attribute_info/hb_temp_defaults.xml b/src/import/hwpf/fapi2/xml/attribute_info/hb_temp_defaults.xml
index adeadd9e0..88cd2e9c2 100644
--- a/src/import/hwpf/fapi2/xml/attribute_info/hb_temp_defaults.xml
+++ b/src/import/hwpf/fapi2/xml/attribute_info/hb_temp_defaults.xml
@@ -102,6 +102,15 @@
</attribute>
<attribute>
<id>ATTR_SDISN_SETUP</id>
+ <default>0</default>
+ </attribute>
+ <attribute>
+ <id>ATTR_MEMVPD_POS</id>
+ <default>0</default>
+ </attribute>
+ <attribute>
+ <id>ATTR_MEMVPD_FREQS_MHZ</id>
+ <default>0,0,0,0</default>
</attribute>
<attribute>
<id>ATTR_VPD_OVERRIDE_MT</id>
diff --git a/src/import/hwpf/fapi2/xml/attribute_info/system_attributes.xml b/src/import/hwpf/fapi2/xml/attribute_info/system_attributes.xml
index 3fa2ac231..4e3d9be64 100644
--- a/src/import/hwpf/fapi2/xml/attribute_info/system_attributes.xml
+++ b/src/import/hwpf/fapi2/xml/attribute_info/system_attributes.xml
@@ -7,7 +7,7 @@
<!-- -->
<!-- EKB Project -->
<!-- -->
-<!-- COPYRIGHT 2015 -->
+<!-- COPYRIGHT 2015,2016 -->
<!-- [+] International Business Machines Corp. -->
<!-- -->
<!-- -->
@@ -40,4 +40,15 @@
<platInit/>
</attribute>
<!-- ********************************************************************* -->
+ <attribute>
+ <id>ATTR_MEMVPD_FREQS_MHZ</id>
+ <targetType>TARGET_TYPE_SYSTEM</targetType>
+ <description>
+ List of memory frequencies supported by the current system.
+ </description>
+ <valueType>uint32</valueType>
+ <array>4</array>
+ <platInit/>
+ </attribute>
+ <!-- ********************************************************************* -->
</attributes>
OpenPOWER on IntegriCloud