summaryrefslogtreecommitdiffstats
path: root/src/bootloader/bl_start.S
Commit message (Collapse)AuthorAgeFilesLines
* Support HB running in SMFDean Sanner2018-09-241-3/+31
| | | | | | | | | | | | | | | | | | | | | | Support SMF for P9N/P9C. Lots of minor tweaks to make this work, but the biggest is to run userspace in problem state This is needed because for SMF Hostboot will need to run in S=1, HV=0,PR=1 (and kernel in S=1, HV=1, PR=0) This commit makes P9 HB userpsace run in HV=0 PR=1 and kernel in HV=1, PR=0. Change-Id: Ia4771df5e8858c6b7ae54b0746e62b283afb4bc4 RTC: 197243 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/50530 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: Dean Sanner <dsanner@us.ibm.com> Reviewed-by: Nicholas E. Bofferding <bofferdn@us.ibm.com> Reviewed-by: Christian R. Geddes <crgeddes@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Force checkstops for unhandled machine checksDan Crowell2018-03-291-3/+2
| | | | | | | | | | | | | | | | | | | Default MSR[ME]=0 during initial boot for bootloader and hostboot kernel Once the xscom address range has been mapped in, enable the machine check handler to force a checkstop and set MSR[ME]=1 to allow regular machine check handling CQ: SW401402 Change-Id: I104e39465e61b3b19d5c073e71271102711ae54f Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/47179 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: William G. Hoffa <wghoffa@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>
* Hostboot not able to send a valid TI after corrupting HB baseMarty Gloff2017-08-041-39/+83
| | | | | | | | | | | | | | | | | | 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>
* 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>
* 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>
* Bootloader updates to support remapped memory - Initial passMarty Gloff2017-05-081-21/+2
| | | | | | | | | | | | | | | | | 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>
* 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-171-2/+3
| | | | | | | | | | | | | | 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>
* Add SecureROM version info and Change SBE update to use max HBBL sizeStephen Cprek2017-03-011-6/+0
| | | | | | | | | | | | | | | 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>
* 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-201-1/+202
| | | | | | | | | | | | | | | | | 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>
* Boot loader support for relative HRMORDean Sanner2016-11-041-2/+2
| | | | | | | | | | | | | | | | 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-141-0/+11
| | | | | | | | | | | | | | 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>
* 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>
* Deliver bootloader to fsp and pnorMarty Gloff2016-03-031-73/+81
| | | | | | | | | | | | | | | | | | | | | | Minimal load application -- Create the main bootloader application that drives the load, verification, and relocation of the HBB image and that branches execution to the beginning of the HBB memory. Bootloader Stack Space -- Implement option of allocating stack space in main store apart from the bootloader image so as to not use up image space and to allow sufficient stack space. Deliver the HBBL (HostBoot BootLoader) image out to FIPS. Create an HBBL partition in the PNOR. Change-Id: I659f19428a8588c4b9bea13338efd46c70caaf43 RTC:137932 Depends-on:I740f6f8a707760756a261535e62e2d0a849324f8 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/809 Tested-by: Jenkins Server Reviewed-by: Christian R. Geddes <crgeddes@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com> Reviewed-by: William G. Hoffa <wghoffa@us.ibm.com>
* Hostboot Bootloader InfrastructureMarty Gloff2016-02-191-0/+182
New and changed code to provide bootloader infrastructure. Changes to build bootloader and create the image file. Change-Id: Ie400f0ca6954b86e275fd68c9462f8d18eeec98a RTC:127211 Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/22856 Tested-by: Jenkins Server Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
OpenPOWER on IntegriCloud