diff options
author | Mike Baiocchi <mbaiocch@us.ibm.com> | 2019-06-25 16:17:46 -0500 |
---|---|---|
committer | Daniel M. Crowell <dcrowell@us.ibm.com> | 2019-06-28 15:18:44 -0500 |
commit | ca9007fb2efce09d6bdaf85615e585c524414fab (patch) | |
tree | a80192e2c98fd84cef58be5a5398d38d31c36d7f /src/usr/targeting | |
parent | 20423884e4869fd45dd17e5ceca6d4ebe2d84f7d (diff) | |
download | blackbird-hostboot-ca9007fb2efce09d6bdaf85615e585c524414fab.tar.gz blackbird-hostboot-ca9007fb2efce09d6bdaf85615e585c524414fab.zip |
Add Support for new HDAT Slave Device Type for Nuvoton 75x
The new HDAT spec added a new 'TCG_i2c_TPM' Slave Device Type for the
Host I2C Device Entry Structure. This commit adds the use of it for
Nuvoton 75x support.
Change-Id: I01f75c919f255786e5b32dcde9b86b2e15d33986
RTC:204133
Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/79527
Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com>
Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com>
Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com>
Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com>
Reviewed-by: Nicholas E. Bofferding <bofferdn@us.ibm.com>
Reviewed-by: Ilya Smirnov <ismirno@us.ibm.com>
Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Diffstat (limited to 'src/usr/targeting')
-rwxr-xr-x | src/usr/targeting/common/processMrw.pl | 17 | ||||
-rw-r--r-- | src/usr/targeting/common/xmltohb/attribute_types.xml | 40 |
2 files changed, 57 insertions, 0 deletions
diff --git a/src/usr/targeting/common/processMrw.pl b/src/usr/targeting/common/processMrw.pl index 744eda2ef..24759589c 100755 --- a/src/usr/targeting/common/processMrw.pl +++ b/src/usr/targeting/common/processMrw.pl @@ -2952,6 +2952,23 @@ sub processI2C { $type = "0xFF"; } + # TPM types can vary by MODEL number + elsif ($type_str eq "NUVOTON_TPM") + { + # Model values can be found in tpmddif.H and are kept in + # sync with TPM_MODEL attribute in attribute_types_hb.xml + my $tpm_model = $targetObj->getAttribute($i2c->{DEST_PARENT},"TPM_MODEL"); + if ($tpm_model eq 1) + { + $type = $targetObj->getEnumValue("HDAT_I2C_DEVICE_TYPE",$type_str); + } + if ($tpm_model eq 2) + { + # @TODO RTC 212201 use proper enum when <system>.xml supports it + #$type = $targetObj->getEnumValue("HDAT_I2C_DEVICE_TYPE","TCG_I2C_TPM"); + $type = 0x15; + } + } else { $type = $targetObj->getEnumValue("HDAT_I2C_DEVICE_TYPE",$type_str); diff --git a/src/usr/targeting/common/xmltohb/attribute_types.xml b/src/usr/targeting/common/xmltohb/attribute_types.xml index cce773a1e..ff9abf83b 100644 --- a/src/usr/targeting/common/xmltohb/attribute_types.xml +++ b/src/usr/targeting/common/xmltohb/attribute_types.xml @@ -2270,6 +2270,46 @@ <value>0xB</value> </enumerator> <enumerator> + <name>THERMAL_SENSOR</name> + <value>0x0C</value> + </enumerator> + <enumerator> + <name>SEEPROM_Atmel24c04</name> + <value>0x0D</value> + </enumerator> + <enumerator> + <name>SEEPROM_Atmel24c412</name> + <value>0x0E</value> + </enumerator> + <enumerator> + <name>SEEPROM_Atmel24c32</name> + <value>0x0F</value> + </enumerator> + <enumerator> + <name>SEEPROM_Atmel24c64</name> + <value>0x10</value> + </enumerator> + <enumerator> + <name>SEEPROM_Atmel24c16</name> + <value>0x11</value> + </enumerator> + <enumerator> + <name>NVDIA_GPU</name> + <value>0x12</value> + </enumerator> + <enumerator> + <name>NXP_LPC_Microcontroller_LPC11U35</name> + <value>0x13</value> + </enumerator> + <enumerator> + <name>9550</name> + <value>0x14</value> + </enumerator> + <enumerator> + <name>TCG_I2C_TPM</name> + <value>0x15</value> + </enumerator> + <enumerator> <name>UNKNOWN</name> <value>0xFF</value> </enumerator> |