summaryrefslogtreecommitdiffstats
path: root/src/include/usr
Commit message (Collapse)AuthorAgeFilesLines
* Support reading from EECACHE during runtimeChristian Geddes2019-07-172-0/+10
| | | | | | | | | | | | | | | | | | | | | To support VPD accesses at runtime we had to add support to access the information in the EECACHE section of pnor during runtime. To do this we copy the contents of the EECACHE section into reserved memory during the runtime setup steps of hostboot. Then when HBRT is loaded we will process that EECACHE section and built up a map that will allow read/write accesses to the eecache section just like during the IPL. Change-Id: I2d08c883e6c09c3194d85abe141c35bb2b76b126 RTC: 204341 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/79985 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: Matt Derksen <mderkse1@us.ibm.com> Reviewed-by: Glenn Miles <milesg@ibm.com> Reviewed-by: Daniel M Crowell <dcrowell@us.ibm.com>
* Force sbe update loop if a change in OMI freq is detectedChristian Geddes2019-07-171-0/+2
| | | | | | | | | | | | | | After we parse the SPD to determine correct frequency settings we need to check if the optimal settings found differ from the original settings we booted with. This commit adds a check for OMI frequency changes in addition to the existing nest frequency and mc sync mode checks. Change-Id: Icaf64eda225df3aab82a033866663e3103cef55f RTC: 207596 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/78739 Reviewed-by: Daniel M Crowell <dcrowell@us.ibm.com> Tested-by: Daniel M Crowell <dcrowell@us.ibm.com>
* Add option to factory reset nvdimmsDan Crowell2019-07-161-0/+1
| | | | | | | | | | | | | Added a factory reset function along with a overridable attribute (ATTR_FORCE_NVDIMM_RESET) to trigger the reset during boot. Change-Id: Ib39675e53d693ede897ace0f4432e104dcf8062e Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/80293 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: Daniel M Crowell <dcrowell@us.ibm.com>
* Push ATTR_NVDIMM_ARMED down to FSP to handle MPIPL caseDan Crowell2019-07-011-0/+1
| | | | | | | | | | | | | | | If the NVDIMM is not armed when the save/flush call is made during a mpipl reboot, it will cause errors in the memory. To avoid this we need HBRT to push down the armed state to the FSP so that HWSV can skip the save call in the case where the NVDIMM is not armed. Change-Id: I16611e8fcb5274c3cb0aee6fec1300a95579b11b Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/79825 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: Daniel M. Crowell <dcrowell@us.ibm.com>
* Remove dependency on ATTR_NVDIMM_ENCRYPTION_ENABLE for unlockCorey Swenson2019-07-011-2/+3
| | | | | | | | | | | | | | | | | An eflash will set ATTR_NVDIMM_ENCRYPTION_ENABLE = 0, so only use HW encryption enabled to decide whether to unlock. Also need to unlock whenever the nvdimm controller is reset. Change-Id: I1505573283da5611354dcfb296b1cf488fa8aef9 CQ:SW469014 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/79674 Reviewed-by: Roland Veloz <rveloz@us.ibm.com> Reviewed-by: Matt Derksen <mderkse1@us.ibm.com> Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-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> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Call notifyNvdimmProtectionChange function during IPLCorey Swenson2019-07-011-1/+3
| | | | | | | | | | | | | | | The function updates ATTR_NVDIMM_ARMED and ATTR_NV_STATUS_FLAG. These need to be kept up-to-date during IPL as well as runtime. Change-Id: If2e8ce9bcc78fb54a0852d3d42753898c199570f Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/79472 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: Matt Derksen <mderkse1@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Fix errludattribute changes that broke the buildDan Crowell2019-07-011-10/+0
| | | | | | | | | | | | | | | | Split the plugin file into a separate file and renamed it to make it obvious which file (runtime or parser) is which. Change-Id: I60d1b9cf7e5816e2d03ce56f6529c0b88178c489 CQ: SW469233 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/79762 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: Matt Derksen <mderkse1@us.ibm.com> Reviewed-by: Nicholas E. Bofferding <bofferdn@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Add functions to back ATTR_FREQ_MCA_MHZ and ATTR_MC_PLL_BUCKET in P9AChristian Geddes2019-06-282-5/+31
| | | | | | | | | | | | | | | | | | | | | | | The FREQ_MCA_MHZ is being used differently in Axone than previously in P9 systems. Now this attribute is now tied in a relationship with the MC_PLL_BUCKET and OMI_PLL_VCO attributes which is defined in the OMI_PLL_FREQ_LIST in the EKB. Hostboot will use the FREQ_OMI_MHZ, which was determined from the parsing DDIMM's VPD, to tell if we have decided that a different PLL bucket than what we booted with is more optimal. At least one scominit procedure is also looking up these values. This commit provides that functions that will allow the Hostboot platform to easily lookup these values. Change-Id: I8e8d970c682d11a73f9fd1962782b613f55bee48 RTC: 207596 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/78542 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Reviewed-by: Matt Derksen <mderkse1@us.ibm.com> Reviewed-by: Roland Veloz <rveloz@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-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> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Add Device Tree support for Nuvoton TPM 75xMike Baiocchi2019-06-271-1/+2
| | | | | | | | | | | | | | | | This commit updates the code that creates the device tree to support Nuvoton TPM 75x models along with the existing 65x models. Change-Id: I46b08970911d259f620c747015800e4aeba34b99 RTC:204133 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/78743 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Reviewed-by: Nicholas E. Bofferding <bofferdn@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-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> Reviewed-by: Ilya Smirnov <ismirno@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Add HCDB Support for eeprom cache processChristian Geddes2019-06-262-6/+17
| | | | | | | | | | | | | | | | | | While parsing the EEPROMs of the system as part of the EECACHE process if we detect a part has been replaced, removed, or added then we must call markTargetChanged to notify hwas to take appropriate actions. This commit also introduces the new preloaded EECACHE section for simics. Change-Id: I9f2a8a62d5c6f9a6c66a0c0c7ed5ed86f7d94aec RTC: 211109 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/78762 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: William G. Hoffa <wghoffa@us.ibm.com> Reviewed-by: Roland Veloz <rveloz@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Clean up the attribute error user detailsDan Crowell2019-06-251-0/+97
| | | | | | | | | | | | | | | | | | | | | | | Moved the structural parts of the errludattribute code into source files, instead of being generated. Now we only pull in the generated code where it is actually useful. This makes updates simpler and faster to compile. Added a couple more attributes to the supported list of displayable values. Improved an error path to get more useful information from unsupported attributes. Change-Id: Ie339e4a1b0a6c8a1d33def92a76e36ba81bab011 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/79062 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: Matt Derksen <mderkse1@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Add interface to mark eeprom caches valid/invalidChristian Geddes2019-06-242-1/+23
| | | | | | | | | | | | | | | | | | | | There are certain scenarios where we might want to update the table of contents at the start of the EECACHE section in pnor to indicate we have decided that the cached copy of one of the eeproms is no longer valid. This commit adds the ability to mark a cache entry as either valid or invalid by calling setIsValidCacheEntry in the EEPROM namespace and tests to verify this works. Future commits will add this call to places it is needed. Change-Id: I6b7dc807b7dbcaca3efa298790f862bc2c5f9ec6 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/78494 Reviewed-by: Roland Veloz <rveloz@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: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Matt Derksen <mderkse1@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Push NVDIMM attribute updates down to the FSPDan Crowell2019-06-212-0/+5
| | | | | | | | | | | | | | | | Added calls to send attributes down to HWSV whenever we update the KEYS or ENABLE values. RTC: 208343 Change-Id: I34f18e6b6c852aa673821853064d5126afdd840e Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/79082 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Reviewed-by: Corey V. Swenson <cswenson@us.ibm.com> Reviewed-by: Roland Veloz <rveloz@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: Daniel M. Crowell <dcrowell@us.ibm.com>
* Added template function to make an attribute with given target and attribute IDRoland Veloz2019-06-203-16/+168
| | | | | | | | | | | | | | The templated function will create an attribute taken from the given target using the attribute ID to locate said attribute. Change-Id: Idc0cb990d89d2a187973ccb7b73ab4d1f36ece12 RTC:208343 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/79015 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-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> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Add Axone target types to errl/hwas functionsDan Crowell2019-06-202-7/+6
| | | | | | | | | | | | | | | | | | | Filled in a couple spots where we needed to support the new Axone targets types: OCMB, PMIC. Cleaned up the way we handle adding PN/SN/ECID to our logs to make them more generic to handle new types in the future automatically. Change-Id: I12173f762f92923347f7215c4e590436fcfb9ed7 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/79061 Reviewed-by: Christian R. Geddes <crgeddes@us.ibm.com> Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-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> Reviewed-by: Matt Derksen <mderkse1@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Handle NVDIMM encryption errorsCorey Swenson2019-06-181-12/+20
| | | | | | | | | | | | Update ATTR_NVDIMM_ARMED and ATTR_NV_STATUS_FLAG Update notifyNvdimmProtectionChange() Set encryption error and check before arm/disarm Change-Id: I1edf738af3460684ee93b02f06ff417c3e72d4e3 RTC:210689 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/78828 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Reworked the AttributeTank::Attribute APIRoland Veloz2019-06-122-35/+337
| | | | | | | | | | | | | | | | | | | | | | | Once I made the Attribute structure public, I exposed the API. It was no longer sufferance to allow users to just modify the properties of the structure openly. It was time to encapsulate the data and provide a proper API. Removed the 'virtual' keyword from the class AttributeTank. This class is not being used polymorphically any where, therefore the keyword 'virtual' was just adding to it's memory size foot print for no reason. Change-Id: I073aa5dbef1eba911afb95392de5e580f6aac100 RTC:208343 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/78756 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-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> Reviewed-by: Nicholas E. Bofferding <bofferdn@us.ibm.com> Reviewed-by: Zachary Clark <zach@ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Use i2c word write for NVDIMM updateMatt Derksen2019-06-121-0/+1
| | | | | | | | | | | | | | Trying to reduce the update time and this reduced teh time to about 12.3 minutes. Change-Id: I97cd29a8bcda58902089480f2cc0849381e7d2cf CQ:SW466226 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/78422 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>
* OCMB MMIO error handlingGlenn Miles2019-06-071-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | Added the following -Error checking and FRU isolation on explorer side -Cleaned up MMIO write error handling to read an MMIO error register -Fixed and enabled MMIO test cases -Moved parameter checking and channel checkstop checking into seperate functions. -Only check for channel checkstop for the channel that an OCMB is connected to. -Switch to using I2C on first MMIO failure. Change-Id: I5e997c5177f8a68a2966f837acc9b578a4cc1897 RTC:201588 RTC:201901 RTC:202533 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/77859 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: Matt Derksen <mderkse1@us.ibm.com> Reviewed-by: Christian R. Geddes <crgeddes@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Clean up some comments and refactor how we determine new cache entryChristian Geddes2019-06-051-4/+0
| | | | | | | | | | | | | | | | | | | While code was added to handle detecting new OCMB parts a new check was added to make sure an entry was newly added to cache to make it so we didnt do new part validation on entries that had not been cached yet. This commit removes what was added and leverages existing information we had earlier on in the caching algorith. Also in this commit a few minor comments were addressed related to tracing and doxygen comments. Change-Id: Ie3454181449320a6a570c15692cc1f71c819ba22 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/77814 Reviewed-by: Matthew Raybuck <matthew.raybuck@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: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Chen Du <duchen@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* NVDIMM encryption HW function supportCorey Swenson2019-06-032-4/+78
| | | | | | | | | | | | | | | | | | Update random number generation, IPL and runtime. Write encryption regs to enable nvdimm encryption, crypto-erase, disable encryption. Read config-status reg to verify encryption state. Change-Id: I25625b53f90eeb542767fa729ebb47f8f8455a4b RTC:201474 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/77321 Reviewed-by: Nicholas E. Bofferding <bofferdn@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: Matthew Raybuck <matthew.raybuck@ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Integrate pmic_enable HWP into IPLMatt Derksen2019-05-311-1/+4
| | | | | | | | | | | | | | | Add pmic_enable to istep 8.12 host_set_voltages. Change-Id: I67079281fd72c2c651db069479882dd7c9e4587c RTC:209259 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/77402 Reviewed-by: Glenn Miles <milesg@ibm.com> Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Reviewed-by: Christian R. Geddes <crgeddes@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-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> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Added new GenericFspMboxMessage_t interface to save NVDIMM keysRoland Veloz2019-05-313-24/+28
| | | | | | | | | | | | | | | | | | | | | | * Added struct AttributeSetter_t to be sent as a GenericFspMboxMessage_t message via a firmware request. * Created 'sendAttributes(const vector<Attribute>&)' to pack the attribute data into the message to be sent. * Moved AttributeTank::Attribute from the private area to the public area so it can be used outside of class AttributeTank. * Added more documentation on how the process of adding and creating messages is done. Change-Id: Id592b6460a6f1f12a75c01b5a131bcf492480d8b RTC:208343 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/77951 Reviewed-by: Nicholas E. Bofferding <bofferdn@us.ibm.com> Reviewed-by: Matthew Raybuck <matthew.raybuck@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>
* Add cache/hardware comparison functions for SPD classes of VPD contentMatthew Raybuck2019-05-312-1/+22
| | | | | | | | | | | | | | | | This commit adds necessary support for ensuring the eeprom cache is in sync with hardware for EEPROM_CONTENT_TYPE DDIMM and ISDIMM. Support for IBM_MVPD and IBM_FRUVPD will be added in a later commmit. Change-Id:I0392c3f6b5dae986c03b9a16cef99a1529dade31 RTC:203788 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/77119 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Reviewed-by: Michael Baiocchi <mbaiocch@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: Daniel M. Crowell <dcrowell@us.ibm.com>
* Add OCMB_CHIP support for ROW_REPAIR getters/settersCaleb Palmer2019-05-301-7/+7
| | | | | | | | | | | | Change-Id: I4e3ca9f998bb6e80c219054a67275738a76fe181 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/77938 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-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> Reviewed-by: Brian J. Stegmiller <bjs@us.ibm.com> Reviewed-by: Benjamen G. Tyner <ben.tyner@ibm.com> Reviewed-by: Zane C. Shelley <zshelle@us.ibm.com>
* Make GCOV support work with GCC 8.1 - 8.3Zach Clark2019-05-301-2/+13
| | | | | | | | | | | | | | | Using GCOV with GCC 8 also requires lcov >= 1.13 Change-Id: Iaa30b1816b8320aff8fe2b8c8c731a186a177d98 RTC: 208351 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/77429 Reviewed-by: Ilya Smirnov <ismirno@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: Nicholas E. Bofferding <bofferdn@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Updates to compile new pmic fields in p9a eff_configMatt Derksen2019-05-291-1/+9
| | | | | | | | | | | | | | Added to support updates to p9a_eff_config.C Change-Id: I7424447a57b65ccdc2835dfdb2ec5dcef72b0f53 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/77810 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> Reviewed-by: Glenn Miles <milesg@ibm.com> Reviewed-by: Christian R. Geddes <crgeddes@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Refactor keyword support for various DIMM typesMatthew Raybuck2019-05-292-8/+6
| | | | | | | | | | | | | | | | | | | | | The existing keyword logic didn't use bitmasking when searching for the correct keyword entry. This commit refactors the code to allow for bitmasking and changing the NA module specific keyword to mean that no keyword was found for the given target rather than its previous ambiguous meaning that could be confused with the ALL module specific keyword. Change-Id: I661b70c4eff2740911cd63f8c1042ee8a084d63a RTC:203788 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/77357 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-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> Reviewed-by: Christian R. Geddes <crgeddes@us.ibm.com> Reviewed-by: Michael Baiocchi <mbaiocch@us.ibm.com> Reviewed-by: Glenn Miles <milesg@ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Document Axone NPU configurationDan Crowell2019-05-291-1/+23
| | | | | | | | | | | | | | | | | | | - Updated simics_AXONE.system.xml with the valid target configuration that we should be using for NPUs in Axone. - Updated target xml files as well - Corrected 1 PG rule that no longer applies - Also modified the OBUS_BRICK layout in simics_AXONE as well Change-Id: I05c68be027cd4da39afabee04fefbb266b87c5fb RTC: 208518 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/76510 Reviewed-by: Christian R. Geddes <crgeddes@us.ibm.com> Reviewed-by: Glenn Miles <milesg@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: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Combine 'generic' and 'explorer' OCMB chip targetsMike Baiocchi2019-05-161-0/+1
| | | | | | | | | | | | | | | | | | This commit moves the Explorer-specific OCMB_CHIP target into the 'generic' OCMB_CHIP target so that there is only one target. This target will also be used for Gemini. Changes were also made to look for Gemini vs Explorer where appropriate based on ATTR_CHIP_ID. Change-Id: I91b79195bf997a6af4e2ae0a3326ed5a1c7887ec RTC:205563 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/77220 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: Glenn Miles <milesg@ibm.com> Reviewed-by: William G. Hoffa <wghoffa@us.ibm.com> Reviewed-by: Christian R. Geddes <crgeddes@us.ibm.com>
* Add OCMB_CHIP support for BAD_DQ_BITMAP getters/settersCaleb Palmer2019-05-161-7/+7
| | | | | | | | | | | Change-Id: I67225be7e72f7a5194e6a47412ef0895683b8329 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/77217 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: Brian J. Stegmiller <bjs@us.ibm.com> Reviewed-by: Zane C. Shelley <zshelle@us.ibm.com>
* Increase number of reserved hdat sectionsDan Crowell2019-05-151-2/+2
| | | | | | | | | | | | | | | Increase the static max for reserved memory sections from 50 to 60. Change-Id: I327b2838b9d64b8b40ede1c680372b9ee1f0ac5a CQ: SW465055 CMVC-Coreq: 1083554 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/77336 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: Daniel M. Crowell <dcrowell@us.ibm.com>
* Force Axone simics to read all VPD from HW with config flagsChristian Geddes2019-05-142-62/+82
| | | | | | | | | | | | | | | | | | This commit will set the config flags to always read from HW rather than the old VPD cache in PNOR. Until this point in Axone we were still using an old copy of MVPD that we write into PNOR during the startup simics scripts. From this commit onward we will use the actual VPD simics provides. To handle this, some updates we needed to the PG rules for Axone. Change-Id: Ie06cefe1aec37edfc4c379ee1173bc51fc6bbe1f Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/76519 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: Matt Derksen <mderkse1@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Developer Improvement: Get code coverage tool working with HostbootZach Clark2019-05-131-26/+190
| | | | | | | | | | | | | | | This commit fixes GCOV code coverage for P9 with GCC 4.9.2 Change-Id: Ie1e7c35f67414531dbd6e7a771ac1529a9ebd59d RTC: 208351 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/76812 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Reviewed-by: Nicholas E. Bofferding <bofferdn@us.ibm.com> Reviewed-by: Ilya Smirnov <ismirno@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>
* Add NVDIMM key attributes and generate keysCorey Swenson2019-05-112-1/+15
| | | | | | | | | | | | | | | | 3 keys, 32 bytes each, random numbers generated by TPM hardware. 2 attributes for keys, 1 stored in FW 1 stored in anchor card. 1 attribute for enable/disable encryption. Change-Id: Ie3c258f06204e68c2d65b8d5fea294da5264d597 RTC:208342 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/76126 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Reviewed-by: Matt Derksen <mderkse1@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>
* Revisit attributes with array types.Luis Fernandez2019-05-091-0/+152
| | | | | | | | | | | | | | | Use std::array to set and get attributes' value that support array. Change-Id: I9dc31bbca5ad0c56add353c6d4233296d2bb200a RTC: 110583 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/76347 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Reviewed-by: Ilya Smirnov <ismirno@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> Reviewed-by: Nicholas E. Bofferding <bofferdn@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Add page tables to read only partitionsChen Du2019-05-093-6/+6
| | | | | | | | | | | | | | | | | | Changed partitions (WOFDATA, MEMD) to be signed with a hash page table bit. This generates a hash page table in the protected payload which will be used to validate pages in the unprotected payload Change-Id: I9be4b1f6e65b9a52a8b6ba23affdacc4d89f5295 RTC: 179519 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/72776 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Reviewed-by: Nicholas E. Bofferding <bofferdn@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: Michael Baiocchi <mbaiocch@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Add keyword support for OCMB SPD readsMatthew Raybuck2019-05-091-0/+1
| | | | | | | | | | | | | | | | | | Currently the only supported keyword was ENTIRE_SPD for OCMB chips. This commit adds support for all of the common keywords (modSpec NA and DDIMM) for DDRx DIMMs and new keywords for OCMB_MODULE_PART_NUMBER and OCMB_MODULE_SERIAL_NUMBER. Change-Id: Ib29fb6153e47e56b24a1e7f51c8cbf33e6a48d73 RTC:203788 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/76922 Reviewed-by: Matt Derksen <mderkse1@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: Michael Baiocchi <mbaiocch@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Add Axone to RISK_LEVEL logicDan Crowell2019-05-081-0/+9
| | | | | | | | | | | | | | | | | | Axone reuses the RISK_LEVEL settings for Nimbus DD2.3 so changes are made to reflect that. This is primarily a documentation exercise but there is logic now to normalize the RISK_LEVEl up to 4,5 versus 0,1 just to stay sane and reduce the test matrix. Change-Id: I5410d1bf7b12fc7f771e2c9826fcd086b2520091 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/76757 Reviewed-by: Matt Derksen <mderkse1@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> Reviewed-by: Matthew Raybuck <matthew.raybuck@ibm.com> Reviewed-by: Jayashankar Padath <jayashankar.padath@in.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Add keywords for part and serial number for DDIMMMatthew Raybuck2019-05-071-1/+3
| | | | | | | | | | | | | | | | Adds the PART_NUMBER and SERIAL_NUMBER keywords to spdDDR4.H for DDIMM modules. This way OCMBs don't need to read the ENTIRE_SPD and then index to the correct spot. Change-Id: Id0aa805b10305b75fd4f57bb92acb7bbef5667e5 RTC:203788 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/76921 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Reviewed-by: Christian R. Geddes <crgeddes@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>
* Load and validate OCMB FW image in istep 12.13Glenn Miles2019-05-074-3/+167
| | | | | | | | | | | | | | | | Adds function for loading and validating the OCMB firmware image. RTC: 193924 Change-Id: I398d80940710f46cf7e0b66ed663116e574e54b9 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/76624 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: Matt Derksen <mderkse1@us.ibm.com> Reviewed-by: Ilya Smirnov <ismirno@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Add new 'expupd' moduleGlenn Miles2019-05-012-0/+59
| | | | | | | | | | | | | | | | | | Chages required to add the 'expupd' module which will contain hostboot support and tests for updating the explorer chip firmware. RTC: 193924 Change-Id: Iceddc675e8078aeafe62893df8febb531f4a0cf0 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/76623 Reviewed-by: Ilya Smirnov <ismirno@us.ibm.com> Reviewed-by: Christian R. Geddes <crgeddes@us.ibm.com> Reviewed-by: Matt Derksen <mderkse1@us.ibm.com> Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-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> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Gemini vs Explorer Presence Detection via SPDMatthew Raybuck2019-05-011-1/+7
| | | | | | | | | | | | | | | | | | | | | | | Since the OCMB chip is held in reset until after presence detection the IDEC register cannot be read to differentiate between Gemini and Explorer chip types. To work around this issue, during the early part of IPL when presence detection is occurring the OCMB IDEC function will instead read the SPD and populate the necessary attributes with what is found there. That will be used to determine the difference between Gemini and Explorer until later when the OCMB IDEC register can be read from. At that point the IDEC read will be executed again and the data read from the OCMB IDEC register will be used to cross-check the data read from the SPD. Any discrepancies will be handled with predictive error logs. Change-Id: Ica664b06ff3488f48253d3ef02eff2d49c5d240d RTC: 208696 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/76108 Reviewed-by: Christian R. Geddes <crgeddes@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>
* Support writable ATTR_FREQ_MCA_MHZ for AxoneDan Crowell2019-04-302-1/+28
| | | | | | | | | | | | | | | | | ATTR_FREQ_MCA_MHZ is being reused on Axone to drive the memory clocks out to the OMIs. Previously this value was locked to the NEST/PB frequency so the value was constant. Change-Id: I4ab7625c2e22efc83ad63a463ebbb208392209ff Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/76315 Reviewed-by: Nicholas E. Bofferding <bofferdn@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: Corey V. Swenson <cswenson@us.ibm.com> Reviewed-by: Christian R. Geddes <crgeddes@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Add SMF mode flag to HOMER for use by OCCChris Cain2019-04-305-6/+12
| | | | | | | | | | | | | | Change-Id: I03daab724811f09aa83c4e0d7929f0a013a2b731 RTC: 164116 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/76398 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Reviewed-by: Christopher J. Cain <cjcain@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: Martha Broyles <mbroyles@us.ibm.com> Reviewed-by: Sheldon Bailey <baileysh@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Collect IDEC for Explorer chipMatthew Raybuck2019-04-301-0/+3
| | | | | | | | | | | | | | | | | | | The OCMB Explorer Chip doesn't read for IDEC but instead assumes hardcoded values. Since the Explorer chip is held in reset until iStep 10.4, this commit will prevent IDEC reads during discoverTargets and instead perform the read when exp_check_for_ready() is successful. Change-Id: I4ef5a01badb195acca0c2187ef76ea55f58eafe4 RTC:201996 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/75881 Reviewed-by: Matt Derksen <mderkse1@us.ibm.com> Reviewed-by: Christian R. Geddes <crgeddes@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: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com> Tested-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Remove GLOBAL PNOR PartitionMike Baiocchi2019-04-261-1/+0
| | | | | | | | | | | | | | | | | | The GLOBAL PNOR partition is not being used so this commit removes all references to it in PNOR constants, various PNOR layout files, and makefiles. It also has some general changes to improve error handling in builing pnors. Change-Id: I896be8c90c3ad9969c02399d015fa71399220181 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/76218 Reviewed-by: Christian R. Geddes <crgeddes@us.ibm.com> Reviewed-by: Matt Derksen <mderkse1@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: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Reviewed-by: Ilya Smirnov <ismirno@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Add Child RC Checking to Thread PoolIlya Smirnov2019-04-243-7/+29
| | | | | | | | | | | | | | | | | | | | | | | Add logic for Thread Pool to return error log when shutdown() is called if a child thread (or multiple child threads) had crashed. This is a default behavior, but a constructor option can switch this functionality off. The new logic will aid in debugging of the failures of child processes, as the failures could be catched when they occurred and not at some point after. Change-Id: I9736d659a086701b8e4f18f41504df4864924d88 RTC: 208517 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/75897 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: Nicholas E. Bofferding <bofferdn@us.ibm.com> Reviewed-by: Michael Baiocchi <mbaiocch@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Validate OMI INBAND BAR offset attributes against calculated valuesChristian Geddes2019-04-181-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | While setting up the virtual memory mapped IO to the OCMB chips we make some assumptions that the OCMB MMIO spaces will be contiguous. The p9a_omi_setup_bars HWP uses OMI_INBAND_BAR_BASE_ADDR_OFFSET to set the scom registers that determine the physical offset mapped to the IO. When setting up the Virtual addresses hostboot uses to represent the physical mmio address, we must validate that the attribute matches with what we calculated. While doing this we found that the virtual address attribute was being calculated incorrectly. It was not localizing the OCMB position relative to the MC which is required when calculating the offset into the MC bar. Change-Id: I0ebbcd38e19a238e2cc16791bb0595536788bb7f RTC: 201493 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/75631 Reviewed-by: Matthew Raybuck <matthew.raybuck@ibm.com> Reviewed-by: Michael Baiocchi <mbaiocch@us.ibm.com> Reviewed-by: Roland Veloz <rveloz@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>
* Populate OCMBFW partition with packaged imageGlenn Miles2019-04-171-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | -Adds pkgOcmbFw.pl script for packaging image from microsemi with header containing SHA512 hash of image. Script can also be used to verify existing header and parse/display header contents. -Changed dist.targets.mk to copy pkgOcmbFw.pl tool into fsp/op environments. -Changes to mkrules/hbfw/img/makefile to create 4k fake image (zero filled) and add header to file prior to signing and creating pnor partition. This is done for axone-simics only. -Minor changes to hostboot pnor code to recognize the OCMBFW PNOR partition. Change-Id: I21cd15af9ab63517491ad1897afd3a2223db0dd6 RTC: 193924 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/75669 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> Reviewed-by: Matt Derksen <mderkse1@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Reviewed-by: Christian R. Geddes <crgeddes@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
OpenPOWER on IntegriCloud