diff options
author | crgeddes <crgeddes@us.ibm.com> | 2016-07-26 11:40:30 -0500 |
---|---|---|
committer | William G. Hoffa <wghoffa@us.ibm.com> | 2016-08-25 14:50:15 -0400 |
commit | b0bf18528f97ecef49ff27fd4715b2d2a50ad5ba (patch) | |
tree | c62489d62c413e523e72e3a5559d629165078c08 /src/include/bootloader | |
parent | 1400bea75a6bbd2083a8b39095470102479c8514 (diff) | |
download | talos-hostboot-b0bf18528f97ecef49ff27fd4715b2d2a50ad5ba.tar.gz talos-hostboot-b0bf18528f97ecef49ff27fd4715b2d2a50ad5ba.zip |
Update Bootloader to handle moving the TOC of PNOR around
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>
Diffstat (limited to 'src/include/bootloader')
-rw-r--r-- | src/include/bootloader/bl_pnorAccess.H | 23 |
1 files changed, 15 insertions, 8 deletions
diff --git a/src/include/bootloader/bl_pnorAccess.H b/src/include/bootloader/bl_pnorAccess.H index bc19a4dc2..237900b0d 100644 --- a/src/include/bootloader/bl_pnorAccess.H +++ b/src/include/bootloader/bl_pnorAccess.H @@ -49,7 +49,7 @@ class bl_pnorAccess /** * @brief Get the hostboot base image * - * @param[in] i_pnorStart MMIO address to access the start of pnor flash + * @param[in] i_pnorEnd MMIO address to access the end of pnor flash * * @param[out] o_hbbSection Struct that holds information about the * Hostboot Base Image Section @@ -58,12 +58,15 @@ class bl_pnorAccess * * @param[out] o_tocUsed Tells you which table of contents was used * + * @param[out] o_pnorStart The MMIO address of the start of PNOR + * * @return void */ -static void getHBBSection(uint64_t i_pnorStart, +static void getHBBSection(uint64_t i_pnorEnd, PNOR::SectionData_t& o_hbbSection, uint32_t& o_errCode, - uint8_t& o_tocUsed); + uint8_t& o_tocUsed, + uint64_t& o_pnorStart); private: /** @@ -75,18 +78,20 @@ static void getHBBSection(uint64_t i_pnorStart, * * @param[out] o_TOC Array of section data describing contents of pnor * - * @param[in] i_baseAddr MMIO address to access the start of pnor flash + * @param[out] o_pnorStart The MMIO address of the start of PNOR + * + * @param[out] i_pnorEnd The MMIO address of the end of PNOR * * @return void */ static void readTOC(uint8_t i_tocBuffer[PNOR::TOC_SIZE], uint32_t & o_errCode, - PNOR::SectionData_t * o_TOC, uint64_t i_baseAddr); + PNOR::SectionData_t * o_TOC, uint64_t& o_pnorStart, uint64_t i_pnorEnd); /** * @brief Find a valid TOC within specified side of pnor flash side is determined by the base mmio address passed in * - * @param[in] i_pnorBase MMIO address to access the start of pnor flash + * @param[in] i_pnorEnd MMIO address to access the end of pnor flash * * @param[out] o_TOC Array of section data describing contents of pnor * @@ -94,10 +99,12 @@ static void readTOC(uint8_t i_tocBuffer[PNOR::TOC_SIZE], uint32_t & o_errCode, * * @param[out] o_tocUsed Tells you which table of contents was used * + * @param[out] o_pnorStart The MMIO address of the start of PNOR + * * @return void */ -static void findTOC(uint64_t i_pnorBase, PNOR::SectionData_t * o_TOC, - uint32_t& o_errCode, uint8_t& o_tocUsed); +static void findTOC(uint64_t i_pnorEnd, PNOR::SectionData_t * o_TOC, + uint32_t& o_errCode, uint8_t& o_tocUsed, uint64_t& o_pnorStart); }; |