summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/usr/hwpf/hwp/dimm_attributes.xml44
-rw-r--r--src/usr/hwpf/hwp/system_attributes.xml13
-rw-r--r--src/usr/targeting/common/xmltohb/attribute_types.xml17
-rw-r--r--src/usr/targeting/common/xmltohb/target_types.xml2
-rwxr-xr-xsrc/usr/targeting/common/xmltohb/xmltohb.pl25
5 files changed, 75 insertions, 26 deletions
diff --git a/src/usr/hwpf/hwp/dimm_attributes.xml b/src/usr/hwpf/hwp/dimm_attributes.xml
index c7573cbd6..459d1637b 100644
--- a/src/usr/hwpf/hwp/dimm_attributes.xml
+++ b/src/usr/hwpf/hwp/dimm_attributes.xml
@@ -1,25 +1,25 @@
-<!-- IBM_PROLOG_BEGIN_TAG
- This is an automatically generated prolog.
-
- $Source: src/usr/hwpf/hwp/dimm_attributes.xml $
-
- IBM CONFIDENTIAL
-
- COPYRIGHT International Business Machines Corp. 2012
-
- p1
-
- Object Code Only (OCO) source materials
- Licensed Internal Code Source Materials
- IBM HostBoot Licensed Internal Code
-
- The source code for this program is not published or other-
- wise divested of its trade secrets, irrespective of what has
- been deposited with the U.S. Copyright Office.
-
- Origin: 30
-
- IBM_PROLOG_END -->
+<!-- IBM_PROLOG_BEGIN_TAG -->
+<!-- This is an automatically generated prolog. -->
+<!-- -->
+<!-- $Source: src/usr/hwpf/hwp/dimm_attributes.xml $ -->
+<!-- -->
+<!-- IBM CONFIDENTIAL -->
+<!-- -->
+<!-- COPYRIGHT International Business Machines Corp. 2012,2013 -->
+<!-- -->
+<!-- p1 -->
+<!-- -->
+<!-- Object Code Only (OCO) source materials -->
+<!-- Licensed Internal Code Source Materials -->
+<!-- IBM HostBoot Licensed Internal Code -->
+<!-- -->
+<!-- The source code for this program is not published or otherwise -->
+<!-- divested of its trade secrets, irrespective of what has been -->
+<!-- deposited with the U.S. Copyright Office. -->
+<!-- -->
+<!-- Origin: 30 -->
+<!-- -->
+<!-- IBM_PROLOG_END_TAG -->
<!-- XML file specifying DIMM attributes used by HW Procedures. -->
<attributes>
diff --git a/src/usr/hwpf/hwp/system_attributes.xml b/src/usr/hwpf/hwp/system_attributes.xml
index aea9c2a27..81b71c613 100644
--- a/src/usr/hwpf/hwp/system_attributes.xml
+++ b/src/usr/hwpf/hwp/system_attributes.xml
@@ -241,4 +241,17 @@
<platInit/>
<writeable/>
</attribute>
+ <!-- ********************************************************************* -->
+ <attribute>
+ <id>ATTR_DUMMY_PERSISTENCY</id>
+ <targetType>TARGET_TYPE_SYSTEM</targetType>
+ <description>
+ Cached value to test persistency
+ </description>
+ <valueType>uint8</valueType>
+ <persistent/>
+ <readable/>
+ <writeable/>
+ </attribute>
+
</attributes>
diff --git a/src/usr/targeting/common/xmltohb/attribute_types.xml b/src/usr/targeting/common/xmltohb/attribute_types.xml
index 0feaa2c87..896cbeb24 100644
--- a/src/usr/targeting/common/xmltohb/attribute_types.xml
+++ b/src/usr/targeting/common/xmltohb/attribute_types.xml
@@ -11852,4 +11852,21 @@ firmware notes: Platforms should initialize this attribute to AUTO (0)</descript
<writeable/>
</attribute>
+<attribute>
+ <id>DUMMY_PERSISTENCY</id>
+ <description>Cached value to test persistency</description>
+ <simpleType>
+ <uint8_t>
+ <default>0</default>
+ </uint8_t>
+ </simpleType>
+ <persistency>non-volatile</persistency>
+ <readable/>
+ <writeable/>
+ <hwpfToHbAttrMap>
+ <id>ATTR_DUMMY_PERSISTENCY</id>
+ <macro>DIRECT</macro>
+ </hwpfToHbAttrMap>
+</attribute>
+
</attributes>
diff --git a/src/usr/targeting/common/xmltohb/target_types.xml b/src/usr/targeting/common/xmltohb/target_types.xml
index 88f9fe91f..d5c175106 100644
--- a/src/usr/targeting/common/xmltohb/target_types.xml
+++ b/src/usr/targeting/common/xmltohb/target_types.xml
@@ -179,6 +179,7 @@
<attribute><id>MRW_SAFEMODE_MEM_THROTTLE_NUMERATOR_PER_CHIP</id></attribute>
<attribute><id>MRW_THERMAL_MEMORY_POWER_LIMIT</id></attribute>
<attribute><id>PLCK_IPL_ATTR_OVERRIDES_EXIST</id></attribute>
+ <attribute><id>DUMMY_PERSISTENCY</id></attribute>
</targetType>
<targetType>
@@ -1172,6 +1173,7 @@
<attribute><id>EEPROM_ADDR_INFO0</id></attribute>
<attribute><id>VPD_REC_NUM</id></attribute>
+
</targetType>
<targetType>
diff --git a/src/usr/targeting/common/xmltohb/xmltohb.pl b/src/usr/targeting/common/xmltohb/xmltohb.pl
index 64cb4ee74..2924e0437 100755
--- a/src/usr/targeting/common/xmltohb/xmltohb.pl
+++ b/src/usr/targeting/common/xmltohb/xmltohb.pl
@@ -670,12 +670,28 @@ sub writeFapiPlatAttrMacrosHeaderFileContent {
"it must be DIRECT");
}
- if ($attribute->{persistency} ne "volatile-zeroed")
+ if ( (exists $fapiAttr->{persistent}))
{
- fatal("FAPI non-platInit attr " .
+ if ($attribute->{persistency} ne "non-volatile")
+ {
+ fatal("FAPI non-platInit attr " .
+ "'$hwpfToHbAttrMap->{id}' is " .
+ "'$attribute->{persistency}', " .
+ "it must be non-volatile");
+ }
+ }
+ else
+ {
+ # Check that platInit attributes
+ # have a non-volatile persistency
+ if($attribute->{persistency} ne
+ "volatile-zeroed")
+ {
+ fatal("FAPI non-platInit attr " .
"'$hwpfToHbAttrMap->{id}' is " .
"'$attribute->{persistency}', " .
"it must be volatile-zeroed");
+ }
}
}
@@ -1311,8 +1327,8 @@ VERBATIM
my $attributeIdEnumeration = getAttributeIdEnumeration($attributes);
foreach my $enumerator (@{$attributeIdEnumeration->{enumerator}})
{
- $attrId = $enumerator->{name};
$hexVal = $enumerator->{value};
+ $attrId = $enumerator->{name};
write;
}
@@ -2546,7 +2562,8 @@ sub getAttributeIdEnumeration {
my $attributeHexVal28bit =substr($attributeHexVal,0,7);
if(exists($attrValHash{$attributeHexVal28bit}))
{
- fatal("Error:Duplicate AttributeId hashvalue for $attribute->{id}" );
+ fatal(
+ "Error:Duplicate AttributeId hashvalue for $attribute->{id}");
}
$attrValHash{$attributeHexVal28bit}=1;
$enumeration->{enumerator}->[$attributeValue]->{name}
OpenPOWER on IntegriCloud