summaryrefslogtreecommitdiffstats
path: root/src/bootloader
Commit message (Collapse)AuthorAgeFilesLines
* Remove Secure Boot workaroundsStephen Cprek2017-12-181-11/+0
| | | | | | | | | | | | | | | | | | | | | | | - Removing the magic number checks that would block sb functionality if things didn't appear secure - Remove Best Effort Policy and all of its related code - Remove the legacy PCR extension - Remove the non-secure header preservation path. - Always load HB base image header from the bl to hb data path vs settings unsecurely out of pnor Change-Id: Ie638384ac50ed47850985c959ea7a32e5757d64e RTC: 178520 RTC: 155374 RTC: 173489 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/49925 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-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 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 component ID check for Master Container Lid ProcessingStephen Cprek2017-12-121-2/+2
| | | | | | | | | | | | | Change-Id: Ie6d99d6f67f09861f0d09c8432cf90abc27400b8 RTC: 181848 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/50156 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: Michael Baiocchi <mbaiocch@us.ibm.com> Reviewed-by: Nicholas E. Bofferding <bofferdn@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Story 179465 - Smarter HBBL id handling ...Brian Bakke2017-11-191-0/+7
| | | | | | | | | | | | | | | to avoid constant SBE updates Change-Id: Id02c7eb95a8e83274968477514130512ee553968 RTC: 179465 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/49748 Reviewed-by: Martin Gloff <mgloff@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: Christian R. Geddes <crgeddes@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Secure Boot: Enforce PNOR section component IDsNick Bofferding2017-11-031-1/+86
| | | | | | | | | | | | | | | | | - In secure mode, bootloader will enforce that HBB component ID is set - In secure mode, Hostboot will enforce that PNOR component IDs are set Change-Id: I04f3bbc45417b3229003c56e1083e1fc31c01cd7 RTC: 179422 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/48711 Reviewed-by: Michael Baiocchi <mbaiocch@us.ibm.com> Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Reviewed-by: Marshall J. Wilks <mjwilks@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: Stephen M. Cprek <smcprek@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: William G. Hoffa <wghoffa@us.ibm.com>
* Refactor SecureBoot Workarounds to better control leniencyStephen Cprek2017-08-251-3/+20
| | | | | | | | | | | | | | | | | | At this time we are trying to secure OpenPOWER in secure mode, but allow best effort policies in other scenarios Change-Id: I9ec2b5be49dbfcff678c4d30bb85f8762e448cb6 RTC: 170136 RTC: 155374 RTC: 168021 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/43640 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: Nicholas E. Bofferding <bofferdn@us.ibm.com> Reviewed-by: Michael Baiocchi <mbaiocch@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Pass Key-Addr info through bootloadercrgeddes2017-08-181-3/+29
| | | | | | | | | | | | | RTC: 165369 Change-Id: If15f6ccc7a7c3649b8352467ae10173a15f3f501 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/44426 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> Reviewed-by: Matt Derksen <mderkse1@us.ibm.com> Reviewed-by: Martin Gloff <mgloff@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Fix duplicate sha512 definitionsJaymes Wilks2017-08-041-1/+1
| | | | | | | | | | | | | | | | | All instances for sha2_hash_t have been replaced with SHA512_t and the SHA512_t typedef is now in securerom/contrib/sha512.H in place of the old definition. Change-Id: I32524524d755eb3b0264881317d9be5a294dc9a7 RTC:172333 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/43610 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Reviewed-by: Stephen M. Cprek <smcprek@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: Michael Baiocchi <mbaiocch@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Hostboot not able to send a valid TI after corrupting HB baseMarty Gloff2017-08-044-70/+120
| | | | | | | | | | | | | | | | | | Bootloader TI design is incomplete and does not set up the TI info at HBB offset 0x2000 with the magic signature or pointer to the Bootloader TI data. Change-Id: I16229fed67a2cf67322dce02f0a1b8f0b68d275f CQ: SW397043 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/43941 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: Christian R. Geddes <crgeddes@us.ibm.com> Reviewed-by: Stephen M. Cprek <smcprek@us.ibm.com> Reviewed-by: Corey V. Swenson <cswenson@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Handle Compatability issues for new BltoHbData locationStephen Cprek2017-07-201-2/+2
| | | | | | | | | | | | | Change-Id: I9ec35ca8dd513a5e31f69cd899fa5d1e00d41c63 RTC: 175114 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/42442 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Reviewed-by: Michael Baiocchi <mbaiocch@us.ibm.com> Reviewed-by: Martin Gloff <mgloff@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>
* Relocate bl to hb preserved data and page table in VMMStephen Cprek2017-07-201-1/+4
| | | | | | | | | | | | | | | | Relocate Page Manager Page Table to 256K alignment after preserved area Simplify page manager initialize Change-Id: Ic90584437fa68843a7ebe3818d48c3fe4f5157d8 RTC: 175114 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/42154 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Reviewed-by: Martin Gloff <mgloff@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>
* Remove Hacks / Workarounds put in by commits 41463 and 41574Marty Gloff2017-06-281-6/+11
| | | | | | | | | | | | | | | | | Remove hacks to set LPC and XSCOM MMIO BAR default values in Bootloader and in data passed to Hostboot (defect SW391259). Change-Id: I3df6accadda8a5c461d969ed38e7970bc37291c9 CQ: SW391539 CMVC-Prereq: 1026637 Depends-on: I55ca10034d7adf3e766edb4d0071f649c7c90446 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/41556 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> Reviewed-by: Christian R. Geddes <crgeddes@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* bootloader: Remove hbi_ImageIdWilliam A. Kennington III2017-06-251-5/+1
| | | | | | | | | | | | | | | | | | | | None of the bootloader code references the hbi_ImageId but it is included anyway. If the version string is changed in the build sequence this results in a new hbbl.bin image. When booting with this new image, an SBE update will be triggered since the hbbl.bin is different than the one in the on chip SBE. Resolves #102 Signed-off-by: William A. Kennington III <wak@google.com> Change-Id: I5c19408473bb68ee89ef864517b6964844aad9bd Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/40822 Reviewed-by: Martin Gloff <mgloff@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: Stephen M. Cprek <smcprek@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Fix Bl-To-Hb Data IssueMike Baiocchi2017-06-161-1/+1
| | | | | | | | | | | | | | | | | This commit fixes an issue where data was incorrectly added to the middle of the existing BlToHbData struct. The secure settings at fault have been moved to the end of the structure. Change-Id: I9ecb3256325aaeb633e250cb60e4f4ffc6010dba RTC:163094 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/42005 Reviewed-by: Martin Gloff <mgloff@us.ibm.com> Reviewed-by: Stephen M. Cprek <smcprek@us.ibm.com> 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> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Use Scratch Reg 3 Bit 7 to allow Attribute Overrides in Secure ModeMike Baiocchi2017-06-161-1/+6
| | | | | | | | | | | | | Change-Id: Ic9b220dc3480c13e1b1ac1c69a0be148ab5ea977 RTC:163094 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/41114 Reviewed-by: Stephen M. Cprek <smcprek@us.ibm.com> Reviewed-by: Martin Gloff <mgloff@us.ibm.com> Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Reviewed-by: Marshall J. Wilks <mjwilks@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> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Fix tracing for Bootloader hangs if it can't find first TOCMarty Gloff2017-06-152-0/+28
| | | | | | | | | | | | | | | | Limit how many traces are done by recovery loop that walks back through PNOR to find a valid TOC. Use page aligned MMIO addresses. Change-Id: Icdd41fe36fc597769af57d54049c3e457b790594 RTC: 175243 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/41398 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> Reviewed-by: Matt Derksen <mderkse1@us.ibm.com> Reviewed-by: Corey V. Swenson <cswenson@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Workaround for MMIO BARs passed to BootloaderMarty Gloff2017-06-081-5/+6
| | | | | | | | Change-Id: I2ef14753d5681ce18c65ec6aa486d763bdc690e6 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/41574 Tested-by: Jenkins Server <pfd-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>
* Use effective fabric position for LPC operations in the bootloaderMarty Gloff2017-06-082-30/+27
| | | | | | | | | | | | | | | | | | | When the LPC BAR value is supplied in the SBE to BL structure, use it as the base LPC address, otherwise, still use the LPC constant. Save the value being used in the Bootloader data (which is reorganized to align data blocks on boundaries). Also add hb-bldata to parse out the Bootloader data. Change-Id: I1db19467464b90e0190c4df5f7404624c9423eb5 RTC: 173525 Depends-on: I2b0d1959c303df8c9c28c8f0a5b5be1e77aa154f Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/40217 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> Reviewed-by: Matt Derksen <mderkse1@us.ibm.com> Reviewed-by: Corey V. Swenson <cswenson@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Check Scratch Register 3 bit 7 and set new ATTR_SECURE_SETTINGSMike Baiocchi2017-06-071-1/+1
| | | | | | | | | | | | | | | | | | | | | Change-Id: Ia125ce6fdf5a15acf30a11e3124fae86c645d96c RTC:163094 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/41107 Reviewed-by: Thi N. Tran <thi@us.ibm.com> Reviewed-by: Sachin Gupta <sgupta2m@in.ibm.com> Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: PPE CI <ppe-ci+hostboot@us.ibm.com> Reviewed-by: Marshall J. Wilks <mjwilks@us.ibm.com> Tested-by: Hostboot CI <hostboot-ci+hostboot@us.ibm.com> Reviewed-by: Nicholas E. Bofferding <bofferdn@us.ibm.com> Reviewed-by: Stephen M. Cprek <smcprek@us.ibm.com> Reviewed-by: Matt K. Light <mklight@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com> Reviewed-by: Jennifer A. Stofer <stofer@us.ibm.com> Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/41111 Reviewed-by: Hostboot Team <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>
* Bootloader updates to support remapped memory Final PassMarty Gloff2017-05-311-16/+30
| | | | | | | | | | | | | | | Remove TODO's and make use of updated SBE to Bootloader structure with new version and MMIO BAR fields. Change-Id: I2ec08bd1f646cc052bfc4e018128df5127be8dff RTC: 173526 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/40849 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: Stephen M. Cprek <smcprek@us.ibm.com> Reviewed-by: Nicholas E. Bofferding <bofferdn@us.ibm.com> Reviewed-by: William G. Hoffa <wghoffa@us.ibm.com>
* Bootloader hangs if it can't find first TOCMarty Gloff2017-05-262-39/+36
| | | | | | | | | | | | | | | | | Revise logic in Bootloader for locating the PNOR TOC if it cannot find the TOC at the end of PNOR or if the TOC there fails verification checks. Use the start of PNOR if it was determined, else search back through PNOR by PAGESIZE decrements. Change-Id: I51d0c0f0319bce12ec40d41df2b03f787a3964fd RTC: 164445 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/40638 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: Christian R. Geddes <crgeddes@us.ibm.com> Reviewed-by: Corey V. Swenson <cswenson@us.ibm.com> Reviewed-by: William G. Hoffa <wghoffa@us.ibm.com>
* Add more error info for Bootloader verification errorsStephen Cprek2017-05-241-4/+27
| | | | | | | | | | | | Change-Id: I1407e74360a4e4fd6b931add1a676f349f907318 RTC: 171325 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/40815 Reviewed-by: Nicholas E. Bofferding <bofferdn@us.ibm.com> Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Reviewed-by: Martin Gloff <mgloff@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: Daniel M. Crowell <dcrowell@us.ibm.com>
* Save space in Bootloader image with single thread and task endMarty Gloff2017-05-231-41/+0
| | | | | | | | | | | | | | | Bootloader checks for only being a single thread and handles other thread instances. It also has task end code to suport this checking. This code can be removed to save space. Change-Id: I906740efec02e1799a36edd82963d038fd42ce7e Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/40286 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: Corey V. Swenson <cswenson@us.ibm.com> Reviewed-by: Christian R. Geddes <crgeddes@us.ibm.com> Reviewed-by: William G. Hoffa <wghoffa@us.ibm.com>
* Save space in Bootloader with exception handlersMarty Gloff2017-05-171-12/+6
| | | | | | | | | | | | | | | | | The exception handlers save and restore the register used to save the exception address. The Bootloader does not need to preserve all registers when an exception occurs and can remove two assembly instructions per exception. It will use gpr17 to save the exception address, since that register is less used in Bootloader than gpr1. Change-Id: Ia736040e3975508f40c106d4a8ea1a05f3b75c29 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/40284 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> Reviewed-by: Corey V. Swenson <cswenson@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Save space in Bootloader image with string utilitiesMarty Gloff2017-05-153-1/+35
| | | | | | | | | | | | | | | Some string utility functions are not being used in Bootloader, so add conditions to keep them from being compiled in. Also memset can be replaced by a simple loop to reduce size. Change-Id: I7e483855b9263b19fb3cb3232015d142efede68a Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/40177 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: Stephen M. Cprek <smcprek@us.ibm.com> Reviewed-by: Christian R. Geddes <crgeddes@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Bootloader updates to support remapped memory - Set valid BAR valuesMarty Gloff2017-05-151-2/+2
| | | | | | | | | | | | | | | Until p9_sbe_hb_structures.H changes are available to set the BAR values dynamically, there was a request to set them to valid contants. Change-Id: I98f9ae3ef70fec12180ca48009537a499033bf4b RTC:173526 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/40298 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: Corey V. Swenson <cswenson@us.ibm.com> Reviewed-by: Christian R. Geddes <crgeddes@us.ibm.com> Reviewed-by: William G. Hoffa <wghoffa@us.ibm.com>
* Bootloader updates to support remapped memory - Initial passMarty Gloff2017-05-083-54/+58
| | | | | | | | | | | | | | | | | Add support to BlToHbData structure and create new version. Put in TODOs for pending p9_sbe_hb_structures.H changes. Move selected Bootloader data out of image due to size issues. Update BlTrace tool for new location of trace data. Change-Id: Ic513a95b8f4054d467537c4623d5a7b7aa09e25e RTC:173526 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/40096 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: William G. Hoffa <wghoffa@us.ibm.com> Reviewed-by: Christian R. Geddes <crgeddes@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Expand hostboot progress indicator in core scratch 3 regcrgeddes2017-05-021-0/+11
| | | | | | | | | | | | | | | | | | | Previously this register only had 2 values. "running" in ascii and 0 This commit adds 3 more possible states. Now 0 represents that HB passed off control to the hypervisor. "shutdown" represents that HB TI'ed. "bootload" says we are in the bootloader. "starthbb" means the bootloader has started the base image. "running" means hostboot is up and running. Change-Id: I11e7ef3dbb559a221343070b2c1b15f67853710b RTC: 171742 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/39730 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Reviewed-by: Martin Gloff <mgloff@us.ibm.com> Reviewed-by: Richard J. Knight <rjknight@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: Daniel M. Crowell <dcrowell@us.ibm.com>
* Move certain pnor_utils.H function to pnorif.H that are used externallyStephen Cprek2017-04-101-0/+2
| | | | | | | | | | | | Change-Id: Ic44c769f777a458d627bc306458f3e1c3c532a63 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/38542 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Reviewed-by: Martin Gloff <mgloff@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: Michael Baiocchi <mbaiocch@us.ibm.com> Reviewed-by: Nicholas E. Bofferding <bofferdn@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Secureboot best effort compatibility supportStephen Cprek2017-03-301-16/+3
| | | | | | | | | | | | Change-Id: I1671459ca58684b14f65f322ff6dccddcaad40a2 RTC: 170685 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/38104 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-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> Reviewed-by: Michael Baiocchi <mbaiocch@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Add PNOR SectionIdToString to replace direct access to cv_EYECATCHERStephen Cprek2017-03-233-23/+21
| | | | | | | | | | | | | | | | This catches if the const array size does not match the number of pnor sections and out of range index errors Also it adds genErrlParsing for bootloader files Change-Id: I0a90816a7620022dec16bc7358a68ffbdade0083 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/38159 Reviewed-by: Martin Gloff <mgloff@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> Reviewed-by: Michael Baiocchi <mbaiocch@us.ibm.com> Reviewed-by: Nicholas E. Bofferding <bofferdn@us.ibm.com> Reviewed-by: William G. Hoffa <wghoffa@us.ibm.com>
* Fix dcbz too look at the BLLOADSIZE vs the SAB locationStephen Cprek2017-03-211-2/+2
| | | | | | | | | | | | Change-Id: I0d88f5126cba9597098b86fc0ffa8b2e52ff6237 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/38177 Reviewed-by: Nicholas E. Bofferding <bofferdn@us.ibm.com> Reviewed-by: Michael Baiocchi <mbaiocch@us.ibm.com> Reviewed-by: Martin Gloff <mgloff@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: William G. Hoffa <wghoffa@us.ibm.com>
* Consume Secure Access Bit from SBE HB communication areaStephen Cprek2017-03-173-4/+23
| | | | | | | | | | | | | | Disable verification in bootloader if SAB not set Change-Id: If5f1adcbe0277f2a4223d8cea6a5e2048019871d RTC: 167741 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/37214 Reviewed-by: Michael Baiocchi <mbaiocch@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> Reviewed-by: Nicholas E. Bofferding <bofferdn@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Check if securerom is valid and fill in bl to hb structStephen Cprek2017-03-081-40/+74
| | | | | | | | | | | | | | | | | The bootloader to hostboot structure is data that is filled in by the bootloader and used by hostboot code. This is used for things like getting the securerom code, hwkeyshash, and hbb header Change-Id: I04a228b0f1d5a6f6d0b02bf87f3564f6ef95e7a3 RTC: 166848 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/35762 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> 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>
* Add SecureROM version info and Change SBE update to use max HBBL sizeStephen Cprek2017-03-013-36/+51
| | | | | | | | | | | | | | | The HBBL also contains the securerom code and hw keys' hash for verification purposes. So looking for the end of the HBBL code leaves out those sections Change-Id: I73a1b5c50e3a5b3f642ca569b90e79dbe4c4ba1e Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/35979 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> Reviewed-by: Martin Gloff <mgloff@us.ibm.com> Reviewed-by: Nicholas E. Bofferding <bofferdn@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Put HW keys' hash in HBBL and extract that out to verify codeStephen Cprek2017-02-011-14/+19
| | | | | | | | | | | | | Change-Id: Ifb3193c43319b041d57727cdec4da57fa3c218a1 RTC:166847 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/34758 Tested-by: Jenkins Server <pfd-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 Build CI <op-jenkins+hostboot@us.ibm.com> Reviewed-by: Michael Baiocchi <mbaiocch@us.ibm.com> Reviewed-by: Martin Gloff <mgloff@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Verify HBB in HBBL using ROM codeStephen Cprek2017-02-011-11/+122
| | | | | | | | | | | | | | | | Puts ROM code into the HBBL image page aligned after the end of HBBL Change-Id: I1a07dd912c07557b2a43dfbadc5394a7d212c841 RTC: 143902 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/34293 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: Nicholas E. Bofferding <bofferdn@us.ibm.com> Reviewed-by: Michael Baiocchi <mbaiocch@us.ibm.com> Reviewed-by: Martin Gloff <mgloff@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Compile ROM code within HostbootStephen Cprek2017-01-301-0/+4
| | | | | | | | | | | | | | | Additionally added version id to resolve story 135747 RTC: 143902 Change-Id: I67ad4b28b76464aaa58ec2c344cd1f9ceef9ff73 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/33608 Tested-by: Jenkins Server <pfd-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: Michael Baiocchi <mbaiocch@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Reviewed-by: Martin Gloff <mgloff@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Bootloader - Error handling - Add exception handlingMarty Gloff2017-01-202-2/+316
| | | | | | | | | | | | | | | | | As a second step for Bootloader error handling add support for various exception vectors and handle these exceptions by calling the terminate function. Change-Id: Ib39818fff377da3fa93d32112f629238a82625ad RTC:135746 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/34239 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> Reviewed-by: Nicholas E. Bofferding <bofferdn@us.ibm.com> Reviewed-by: Elizabeth K. Liner <eliner@us.ibm.com> Reviewed-by: Corey V. Swenson <cswenson@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Add one element to the TOC array to match how pnorrp.H does it.Stephen Cprek2017-01-061-2/+2
| | | | | | | | | | | | | | | Also move location where we grab the bootloader trace in citests CQ:SW375140 Change-Id: I1108bccb930d324bf938051738343744610a1876 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/34375 Reviewed-by: Nicholas E. Bofferding <bofferdn@us.ibm.com> Reviewed-by: Martin Gloff <mgloff@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: Christian R. Geddes <crgeddes@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Bootloader - Error handling - Add terminate functionMarty Gloff2017-01-044-4/+155
| | | | | | | | | | | | | | | As a first step to providing Bootloader error handling add support for a terminate function. Change-Id: Id4f8f130376d1396cd4feb796d1a3a908558225b RTC:135746 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/32390 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: Christian R. Geddes <crgeddes@us.ibm.com> Reviewed-by: Corey V. Swenson <cswenson@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Add gcc -Os optimization to the hostboot bootloaderStephen Cprek2016-12-201-0/+2
| | | | | | | | | | | Change-Id: Ibe443c8c937387ffa817d22fa72365b216f42151 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/33414 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Reviewed-by: Martin Gloff <mgloff@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Michael Baiocchi <mbaiocch@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Boot loader support for relative HRMORDean Sanner2016-11-042-4/+5
| | | | | | | | | | | | | | | | Update the bootloader to allow different HRMORs to be used. Reads the starting HRMOR as the base and then loads Hostboot off of that. Change-Id: I6d56c30b4b3ba3d7297d5988ac965e5f5a5f7fd7 RTC: 138273 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/31934 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Reviewed-by: Christian R. Geddes <crgeddes@us.ibm.com> Reviewed-by: Martin Gloff <mgloff@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: Daniel M. Crowell <dcrowell@us.ibm.com>
* Insert bootloader image into SBE SEEPROMMarty Gloff2016-09-142-3/+13
| | | | | | | | | | | | | | 4) Bootloader-related changes associated with Story 138226: Changes for P9 SBE. Change-Id: If9788c3bb2b56fbbaf4f668a1e153da79ad1757f RTC: 139757 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/28276 Reviewed-by: Matt Derksen <v2cibmd@us.ibm.com> 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> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Bootloader needs to clear out SLBs, ERATs, etc. when changing HRMORDean Sanner2016-08-311-1/+3
| | | | | | | | | | Change-Id: I1deaebfe4142a83e096941f395710652f533fc12 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/28746 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Reviewed-by: Martin Gloff <mgloff@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Christian R. Geddes <crgeddes@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Don't use CI ops to store into L3Dean Sanner2016-08-291-9/+9
| | | | | | | | | | Change-Id: I96db8ed45e652388ca1da49c9aa20cf8649b1ab0 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/28420 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Martin Gloff <mgloff@us.ibm.com> Reviewed-by: Christian R. Geddes <crgeddes@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Use word instructions for MMIO accesses in BootloaderMarty Gloff2016-08-292-4/+4
| | | | | | | | | | | | | | | Bootloader was implemented with 1-byte assembler instructions due to model restrictions on LPC accesses that existed at the time. Those restrictions no longer exist. Change Bootloader to use the word (4-byte) assembler instructions for the MMIO accesses. Change-Id: Icc07e1a15d74214b3e6d13edc6cf75d452ee6d11 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/28247 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Dean Sanner <dsanner@us.ibm.com> Reviewed-by: Christian R. Geddes <crgeddes@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Update Bootloader to handle moving the TOC of PNOR aroundcrgeddes2016-08-252-15/+33
| | | | | | | | | | | | | | | | | | | Moved 1 of the PNOR TOCs from 0x8000 to TOP_OF_FLASH - 64KB. Updated bootloader and pnor access code to handle new toc location. Update the defaultPnorLayout to reflect these changes Also added a FSP default pnor xml that will generate a 128 MB image for FSP boxes to use. RTC: 154286 Change-Id: I0253590299ff9714b0d5ab12a02ac9d653b115fa Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/27461 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Reviewed-by: Martin Gloff <mgloff@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com> Reviewed-by: Andrew J. Geissler <andrewg@us.ibm.com> Reviewed-by: Andres A. Lugo-Reyes <aalugore@us.ibm.com> Reviewed-by: William G. Hoffa <wghoffa@us.ibm.com>
* Remove SBE header from HBB imageNick Bofferding2016-07-221-5/+1
| | | | | | | | | | | | | | | | - Removed SBE header from HBB image via makefile - Updated bootloader to stop skipping SBE header bytes RTC: 137480 Change-Id: I7a2148eccc5b0226cdf9ed070ac4ea5269c9d52f Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/26863 Reviewed-by: Stephen M. Cprek <smcprek@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> Reviewed-by: Christian R. Geddes <crgeddes@us.ibm.com> Reviewed-by: Martin Gloff <mgloff@us.ibm.com> Reviewed-by: Michael Baiocchi <mbaiocch@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* PNOR driver changes for 128MB supportcrgeddes2016-07-221-0/+1
| | | | | | | | | | | | Minimum set of changes to support a 128MB PNOR chip RTC: 154286 Change-Id: I0e4a5cf5aa06bfe6e8aef65be4ccc180d15a2d01 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/27143 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Reviewed-by: Martin Gloff <mgloff@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Bootloader needs to dcbz the cache before using itMarty Gloff2016-04-051-12/+37
| | | | | | | | | | | | | | | | | | Add loops to do dcbz instructions. One loop covers L3 cache from the end of the Bootloader load to the end of the area used for storing a copy of HBB with ECC. The other loop covers L3 cache from the start of the area for storing the running copy of HBB to the start of the Bootloader load. Change-Id: If3bb157fe0ea1e61ed5db6c1264b5756cc8453d9 RTC:147380 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/22413 Tested-by: Jenkins Server Tested-by: FSP CI Jenkins Reviewed-by: Christian R. Geddes <crgeddes@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com> Reviewed-by: CHRISTINA L. GRAVES <clgraves@us.ibm.com> Reviewed-by: William G. Hoffa <wghoffa@us.ibm.com>
OpenPOWER on IntegriCloud