summaryrefslogtreecommitdiffstats
path: root/src/usr/hwpf
diff options
context:
space:
mode:
authorMike Jones <mjjones@us.ibm.com>2012-02-14 11:23:54 -0600
committerA. Patrick Williams III <iawillia@us.ibm.com>2012-02-14 13:49:45 -0600
commite6d9fb1d822dde5871bbeef0c8afd1553c2a9c58 (patch)
tree438f135ab27f3abe3b158b63d312c08db74bdc10 /src/usr/hwpf
parent4103b0fa5f9f8521e7fea7496584e207ca62d4e0 (diff)
downloadtalos-hostboot-e6d9fb1d822dde5871bbeef0c8afd1553c2a9c58.tar.gz
talos-hostboot-e6d9fb1d822dde5871bbeef0c8afd1553c2a9c58.zip
HWPF Attribute Support: ATTR_FSI_GP_SCOM_ACCESS.
Change-Id: I6307ae3a6a3c151bb85fd86081a5bac4d16076f4 Reviewed-on: http://gfw160.austin.ibm.com:8080/gerrit/666 Tested-by: Jenkins Server Reviewed-by: Thi N. Tran <thi@us.ibm.com> Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
Diffstat (limited to 'src/usr/hwpf')
-rwxr-xr-xsrc/usr/hwpf/fapi/fapiCreateIfAttrService.pl11
-rwxr-xr-xsrc/usr/hwpf/fapi/fapiParseAttributeInfo.pl16
-rw-r--r--src/usr/hwpf/hwp/L2_L3_attributes.xml6
-rw-r--r--src/usr/hwpf/hwp/chip_attributes.xml48
-rw-r--r--src/usr/hwpf/hwp/memory_attributes.xml6
-rw-r--r--src/usr/hwpf/hwp/scratch_attributes.xml (renamed from src/usr/hwpf/hwp/fapiHwpAttributeInfo.xml)25
-rw-r--r--src/usr/hwpf/hwp/system_attributes.xml39
-rw-r--r--src/usr/hwpf/makefile7
8 files changed, 130 insertions, 28 deletions
diff --git a/src/usr/hwpf/fapi/fapiCreateIfAttrService.pl b/src/usr/hwpf/fapi/fapiCreateIfAttrService.pl
index 4789e8868..53005cab9 100755
--- a/src/usr/hwpf/fapi/fapiCreateIfAttrService.pl
+++ b/src/usr/hwpf/fapi/fapiCreateIfAttrService.pl
@@ -36,6 +36,7 @@
# mjjones 12/12/11 Support all attributes if no if-attr
# files specified (for Cronus)
# mjjones 01/13/12 Use new ReturnCode interfaces
+# mjjones 02/08/12 Handle attribute files with 1 entry
#
# End Change Log ******************************************************
@@ -101,6 +102,11 @@ my $numIfAttrFiles = 0;
my @attrIds;
#------------------------------------------------------------------------------
+# Element names
+#------------------------------------------------------------------------------
+my $attribute = 'attribute';
+
+#------------------------------------------------------------------------------
# For each argument
#------------------------------------------------------------------------------
foreach my $argnum (1 .. $#ARGV)
@@ -152,9 +158,10 @@ foreach my $argnum (1 .. $#ARGV)
else
{
#----------------------------------------------------------------------
- # Process XML file
+ # Process XML file. The ForceArray option ensures that there is an
+ # array of attributes even if there is only one attribute in the file
#----------------------------------------------------------------------
- my $attributes = $xml->XMLin($infile);
+ my $attributes = $xml->XMLin($infile, ForceArray => [$attribute]);
#----------------------------------------------------------------------
# For each Attribute
diff --git a/src/usr/hwpf/fapi/fapiParseAttributeInfo.pl b/src/usr/hwpf/fapi/fapiParseAttributeInfo.pl
index 110057794..0dde39376 100755
--- a/src/usr/hwpf/fapi/fapiParseAttributeInfo.pl
+++ b/src/usr/hwpf/fapi/fapiParseAttributeInfo.pl
@@ -51,6 +51,7 @@
# to a different file
# mjjones 12/16/11 Generate fapiAttributePlatCheck.H
# Generate fapiAttributesSupported.html
+# mjjones 02/08/12 Handle attribute files with 1 entry
#
# End Change Log ******************************************************
@@ -135,14 +136,20 @@ print ASFILE "<table border=\"4\">\n";
print ASFILE "<tr><th>Attribute ID</th><th>Attribute Description</th></tr>";
#------------------------------------------------------------------------------
+# Element names
+#------------------------------------------------------------------------------
+my $attribute = 'attribute';
+
+#------------------------------------------------------------------------------
# For each XML file
#------------------------------------------------------------------------------
foreach my $argnum (1 .. $#ARGV)
{
my $infile = $ARGV[$argnum];
- # read XML file
- my $attributes = $xml->XMLin($infile);
+ # read XML file. The ForceArray option ensures that there is an array of
+ # attributes even if there is only one attribute in the file
+ my $attributes = $xml->XMLin($infile, ForceArray => [$attribute]);
# Uncomment to get debug output of all attributes
#print "\nFile: ", $infile, "\n", Dumper($attributes), "\n";
@@ -184,8 +191,9 @@ foreach my $argnum (1 .. $#ARGV)
{
my $infile = $ARGV[$argnum];
- # read XML file
- my $attributes = $xml->XMLin($infile);
+ # read XML file. The ForceArray option ensures that there is an array of
+ # attributes even if there is only one attribute in the file
+ my $attributes = $xml->XMLin($infile, ForceArray => [$attribute]);
#--------------------------------------------------------------------------
# For each Attribute
diff --git a/src/usr/hwpf/hwp/L2_L3_attributes.xml b/src/usr/hwpf/hwp/L2_L3_attributes.xml
index 513d1052a..750081ad4 100644
--- a/src/usr/hwpf/hwp/L2_L3_attributes.xml
+++ b/src/usr/hwpf/hwp/L2_L3_attributes.xml
@@ -20,6 +20,12 @@
Origin: 30
IBM_PROLOG_END -->
+<!--
+ XML file specifying HWPF attributes.
+ These are L2/L3 non-platInit attributes associated with proc EX chiplets
+-->
+
+
<attributes>
<!-- ********************************************************************* -->
<attribute>
diff --git a/src/usr/hwpf/hwp/chip_attributes.xml b/src/usr/hwpf/hwp/chip_attributes.xml
new file mode 100644
index 000000000..28d13ad83
--- /dev/null
+++ b/src/usr/hwpf/hwp/chip_attributes.xml
@@ -0,0 +1,48 @@
+<!-- IBM_PROLOG_BEGIN_TAG
+ This is an automatically generated prolog.
+
+ $Source: src/usr/hwpf/hwp/fapiHwpAttributeInfo.xml $
+
+ IBM CONFIDENTIAL
+
+ COPYRIGHT International Business Machines Corp. 2011
+
+ 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 -->
+<!--
+ XML file specifying HWPF attributes.
+ These are platInit attributes associated with chips.
+-->
+
+<attributes>
+ <!-- ********************************************************************* -->
+ <attribute>
+ <id>ATTR_EC</id>
+ <targetType>TARGET_TYPE_PROC_CHIP,TARGET_TYPE_MEMBUF_CHIP</targetType>
+ <description>EC level of a chip target</description>
+ <valueType>uint8</valueType>
+ <platInit/>
+ <persistRuntime/>
+ </attribute>
+ <!-- ********************************************************************* -->
+ <attribute>
+ <id>ATTR_FSI_GP_REG_SCOM_ACCESS</id>
+ <targetType>TARGET_TYPE_PROC_CHIP,TARGET_TYPE_MEMBUF_CHIP</targetType>
+ <description>Indicates if the target's FSI GP regs have scom access</description>
+ <valueType>uint8</valueType>
+ <enum>false = 0, true = 1</enum>
+ <platInit/>
+ <persistRuntime/>
+ </attribute>
+</attributes>
diff --git a/src/usr/hwpf/hwp/memory_attributes.xml b/src/usr/hwpf/hwp/memory_attributes.xml
index 28f10755b..a1295932b 100644
--- a/src/usr/hwpf/hwp/memory_attributes.xml
+++ b/src/usr/hwpf/hwp/memory_attributes.xml
@@ -20,6 +20,12 @@
Origin: 30
IBM_PROLOG_END -->
+
+<!--
+ XML file specifying HWPF attributes.
+ These are non-platInit attributes used by memory HWPs.
+-->
+
<attributes>
<attribute>
diff --git a/src/usr/hwpf/hwp/fapiHwpAttributeInfo.xml b/src/usr/hwpf/hwp/scratch_attributes.xml
index 6cff3f8f7..b6905911d 100644
--- a/src/usr/hwpf/hwp/fapiHwpAttributeInfo.xml
+++ b/src/usr/hwpf/hwp/scratch_attributes.xml
@@ -20,8 +20,12 @@
Origin: 30
IBM_PROLOG_END -->
-<!-- XML file specifying HW Procedure requested attributes. -->
-<!-- Attributes that every platform must support for HWP development -->
+<!--
+ XML file specifying HWPF attributes.
+ These are scratch attributes that can be used by PLAT FW for unit test.
+ They can also be used temporarily by a HWP while waiting for an official
+ attribute to be supported.
+-->
<attributes>
<!-- ********************************************************************* -->
@@ -176,21 +180,4 @@
<writeable/>
<array>1, 3, 5</array>
</attribute>
- <!-- ********************************************************************* -->
- <attribute>
- <id>ATTR_IS_SIMULATION</id>
- <targetType>TARGET_TYPE_SYSTEM</targetType>
- <description>env: 1 = Awan/HWSimulator. 0 = Simics/RealHW.</description>
- <valueType>uint8</valueType>
- <platInit/>
- </attribute>
- <!-- ********************************************************************* -->
- <attribute>
- <id>ATTR_EC</id>
- <targetType>TARGET_TYPE_PROC_CHIP,TARGET_TYPE_MEMBUF_CHIP</targetType>
- <description>EC level of a chip target</description>
- <valueType>uint8</valueType>
- <platInit/>
- <persistRuntime/>
- </attribute>
</attributes>
diff --git a/src/usr/hwpf/hwp/system_attributes.xml b/src/usr/hwpf/hwp/system_attributes.xml
new file mode 100644
index 000000000..52556b4bb
--- /dev/null
+++ b/src/usr/hwpf/hwp/system_attributes.xml
@@ -0,0 +1,39 @@
+<!-- IBM_PROLOG_BEGIN_TAG
+ This is an automatically generated prolog.
+
+ $Source: src/usr/hwpf/hwp/fapiHwpAttributeInfo.xml $
+
+ IBM CONFIDENTIAL
+
+ COPYRIGHT International Business Machines Corp. 2011
+
+ 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 -->
+<!--
+ XML file specifying HWPF attributes.
+ These are platInit attributes associated with the system.
+ These attributes are not associated with particular targets.
+ Each execution platform must initialize.
+-->
+
+<attributes>
+ <!-- ********************************************************************* -->
+ <attribute>
+ <id>ATTR_IS_SIMULATION</id>
+ <targetType>TARGET_TYPE_SYSTEM</targetType>
+ <description>env: 1 = Awan/HWSimulator. 0 = Simics/RealHW.</description>
+ <valueType>uint8</valueType>
+ <platInit/>
+ </attribute>
+</attributes>
diff --git a/src/usr/hwpf/makefile b/src/usr/hwpf/makefile
index cc8526390..09dbc61a4 100644
--- a/src/usr/hwpf/makefile
+++ b/src/usr/hwpf/makefile
@@ -34,10 +34,11 @@ HWP_ERROR_XML_FILES = hwp/fapiHwpErrorInfo.xml \
hwp/dmi_training/proc_cen_framelock/proc_cen_framelock_errors.xml \
hwp/dmi_training/dmi_io_run_training/io_run_training_errors.xml
-
-HWP_ATTR_XML_FILES = hwp/fapiHwpAttributeInfo.xml \
- hwp/memory_attributes.xml \
+HWP_ATTR_XML_FILES = hwp/memory_attributes.xml \
hwp/L2_L3_attributes.xml \
+ hwp/scratch_attributes.xml \
+ hwp/system_attributes.xml \
+ hwp/chip_attributes.xml \
hwp/DIMM_SPD_attributes.xml
#------------------------------------------------------------------------------
OpenPOWER on IntegriCloud