summaryrefslogtreecommitdiffstats
path: root/src/usr/targeting/common/xmltohb/attribute_types.xml
diff options
context:
space:
mode:
authorMatthew Raybuck <matthew.raybuck@ibm.com>2019-04-30 10:01:43 -0500
committerDaniel M. Crowell <dcrowell@us.ibm.com>2019-05-09 16:31:05 -0500
commitd2da0774fa01e5bb89a717baf814e43f5f3fef0a (patch)
treec14c07ab8648848e6ede1c730b8a1636ed1ffcae /src/usr/targeting/common/xmltohb/attribute_types.xml
parentc0b91d3b52a6139f7e56a6e3896018cdeac26dae (diff)
downloadtalos-hostboot-d2da0774fa01e5bb89a717baf814e43f5f3fef0a.tar.gz
talos-hostboot-d2da0774fa01e5bb89a717baf814e43f5f3fef0a.zip
Targeting updates for EEPROM content type
Adds a new enumerationType called EEPROM_CONTENT_TYPE as well as a new field to the EEPROM_VPD_PRIMARY_INFO and EEPROM_VPD_BACKUP_INFO called eepromContentType. EEPROM_CONTENT_TYPE serves to define the constants for the five types of eeprom content types; they are: RAW, DDIMM, ISDIMM, IBM_FRUVPD, and IBM_MVPD. There are five targetTypes that default eepromContentType to the appropriate value for that targetType; they are: PROC, OCMB, NODE, LCARD_DIMM, MCS. Due to the limitations of targeting, an enumeration type can't be used with complexTypes. Instead, eepromContentType matches the values of the five types defined by EEPROM_CONTENT_TYPE. This commit is used to support Part and Serial Number lookups when deciding EEPROM cache content updates. Change-Id: Ie8f1e81ff7273c76178c5c621771d5b6c75903e9 RTC:203788 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/76855 Reviewed-by: Glenn Miles <milesg@ibm.com> Reviewed-by: Michael Baiocchi <mbaiocch@us.ibm.com> Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Diffstat (limited to 'src/usr/targeting/common/xmltohb/attribute_types.xml')
-rw-r--r--src/usr/targeting/common/xmltohb/attribute_types.xml102
1 files changed, 82 insertions, 20 deletions
diff --git a/src/usr/targeting/common/xmltohb/attribute_types.xml b/src/usr/targeting/common/xmltohb/attribute_types.xml
index b1ae2e230..2378f270e 100644
--- a/src/usr/targeting/common/xmltohb/attribute_types.xml
+++ b/src/usr/targeting/common/xmltohb/attribute_types.xml
@@ -884,6 +884,54 @@
</attribute>
<attribute>
+ <description>Specifies a target's eeprom content type.</description>
+ <hasStringConversion/>
+ <id>EEPROM_CONTENT_TYPE</id>
+ <persistency>non-volatile</persistency>
+ <readable/>
+ <simpleType>
+ <enumeration>
+ <id>EEPROM_CONTENT_TYPE</id>
+ </enumeration>
+ </simpleType>
+ </attribute>
+
+ <enumerationType>
+ <default>RAW</default>
+ <description>Enumeration indicating a target's eeprom
+ content type.
+ RAW - eeprom has no specified layout
+ ISDIMM - uses standard JEDEC layout for DDR memory
+ IBM_FRUVPD - uses ipz converged vpd layout with records/keywords for
+ generic FRUs
+ IBM_MVPD - use ipz converged vpd layout with records/keywords for
+ processor modules
+ DDIMM - uses Differential DIMM layout
+ </description>
+ <enumerator>
+ <name>RAW</name>
+ <value>0</value>
+ </enumerator>
+ <enumerator>
+ <name>ISDIMM</name>
+ <value>1</value>
+ </enumerator>
+ <enumerator>
+ <name>IBM_FRUVPD</name>
+ <value>2</value>
+ </enumerator>
+ <enumerator>
+ <name>IBM_MVPD</name>
+ <value>3</value>
+ </enumerator>
+ <enumerator>
+ <name>DDIMM</name>
+ <value>4</value>
+ </enumerator>
+ <id>EEPROM_CONTENT_TYPE</id>
+ </enumerationType>
+
+ <attribute>
<id>EEPROM_NV_INFO</id>
<description>Information needed to address the NV controller on the NVDIMM</description>
<complexType>
@@ -1179,8 +1227,9 @@
<attribute>
<complexType>
- <description>Structure to define the addressing for an I2C
- slave device.</description>
+ <description>Structure to define the addressing for an attached I2C
+ eeprom device that contains secondary VPD info.
+ </description>
<field>
<default>physical:sys-0</default>
<description>Entity path to the chip that contains the I2C
@@ -1189,49 +1238,49 @@
<type>EntityPath</type>
</field>
<field>
- <default>0x80</default>
+ <default>0xFF</default>
<description>Port from the I2C Master device. This is a 6-bit
value.</description>
<name>port</name>
<type>uint8_t</type>
</field>
<field>
- <default>0x80</default>
+ <default>0xFF</default>
<description>Device address on the I2C bus. This is a 7-bit value,
but then shifted 1 bit left.</description>
<name>devAddr</name>
<type>uint8_t</type>
</field>
<field>
- <default>0x80</default>
+ <default>0xFF</default>
<description>I2C master engine. This is a 2-bit
value.</description>
<name>engine</name>
<type>uint8_t</type>
</field>
<field>
- <default>0x02</default>
+ <default>0xFF</default>
<description>The number of bytes a device requires to set its
internal address/offset.</description>
<name>byteAddrOffset</name>
<type>uint8_t</type>
</field>
<field>
- <default>0x0</default>
+ <default>0xFFFFFFFFFFFFFFFF</default>
<description>The number of kilobytes a device can hold. 'Zero'
value possible for some devices.</description>
<name>maxMemorySizeKB</name>
<type>uint64_t</type>
</field>
<field>
- <default>0x01</default>
+ <default>0xFF</default>
<description>The number of chips making up an eeprom device.
</description>
<name>chipCount</name>
<type>uint8_t</type>
</field>
<field>
- <default>0x0</default>
+ <default>0xFFFFFFFFFFFFFFFF</default>
<description>The maximum number of bytes that can be written to
a device at one time. 'Zero' value means no maximum
value is expected or checked.</description>
@@ -1239,7 +1288,7 @@
<type>uint64_t</type>
</field>
<field>
- <default>0xA</default>
+ <default>0xFFFFFFFFFFFFFFFF</default>
<description>The amount of time in milliseconds a device requires
on the completion of a write command to update its
internal memory.</description>
@@ -1264,6 +1313,12 @@
<name>i2cMuxPath</name>
<type>EntityPath</type>
</field>
+ <field>
+ <default>0xFFFFFFFF</default>
+ <description>Indicates the target's eeprom content type</description>
+ <name>eepromContentType</name>
+ <type>uint32_t</type>
+ </field>
</complexType>
<description>Information needed to address the EERPROM slaves</description>
<id>EEPROM_VPD_BACKUP_INFO</id>
@@ -1273,8 +1328,9 @@
<attribute>
<complexType>
- <description>Structure to define the addressing for an I2C
- slave device.</description>
+ <description>Structure to define the addressing for an attached I2C
+ eeprom device that contains primary VPD info.
+ </description>
<field>
<default>physical:sys-0</default>
<description>Entity path to the chip that contains the I2C
@@ -1283,28 +1339,28 @@
<type>EntityPath</type>
</field>
<field>
- <default>0x80</default>
+ <default>0xFF</default>
<description>Port from the I2C Master device. This is a 6-bit
value.</description>
<name>port</name>
<type>uint8_t</type>
</field>
<field>
- <default>0x80</default>
+ <default>0xFF</default>
<description>Device address on the I2C bus. This is a 7-bit value,
but then shifted 1 bit left.</description>
<name>devAddr</name>
<type>uint8_t</type>
</field>
<field>
- <default>0x80</default>
+ <default>0xFF</default>
<description>I2C master engine. This is a 2-bit
value.</description>
<name>engine</name>
<type>uint8_t</type>
</field>
<field>
- <default>0x02</default>
+ <default>0xFF</default>
<description>
The number of bytes a device requires to set its
internal address/offset. DDR4 DIMMs require a special EEPROM
@@ -1318,21 +1374,21 @@
<type>uint8_t</type>
</field>
<field>
- <default>0x0</default>
+ <default>0xFFFFFFFFFFFFFFFF</default>
<description>The number of kilobytes a device can hold. 'Zero'
value possible for some devices.</description>
<name>maxMemorySizeKB</name>
<type>uint64_t</type>
</field>
<field>
- <default>0x01</default>
+ <default>0xFF</default>
<description>The number of chips making up an eeprom device.
</description>
<name>chipCount</name>
<type>uint8_t</type>
</field>
<field>
- <default>0x0</default>
+ <default>0xFFFFFFFFFFFFFFFF</default>
<description>The maximum number of bytes that can be written to
a device at one time. 'Zero' value means no maximum
value is expected or checked.</description>
@@ -1340,7 +1396,7 @@
<type>uint64_t</type>
</field>
<field>
- <default>0xA</default>
+ <default>0xFFFFFFFFFFFFFFFF</default>
<description>The amount of time in milliseconds a device requires
on the completion of a write command to update its
internal memory.</description>
@@ -1365,6 +1421,12 @@
<name>i2cMuxPath</name>
<type>EntityPath</type>
</field>
+ <field>
+ <default>0xFFFFFFFF</default>
+ <description>Indicates the target's eeprom content type</description>
+ <name>eepromContentType</name>
+ <type>uint32_t</type>
+ </field>
</complexType>
<description>Information needed to address the EEPROM slaves</description>
<id>EEPROM_VPD_PRIMARY_INFO</id>
OpenPOWER on IntegriCloud