diff options
author | Marty Gloff <mgloff@us.ibm.com> | 2016-08-12 16:22:48 -0500 |
---|---|---|
committer | Daniel M. Crowell <dcrowell@us.ibm.com> | 2016-08-29 13:57:34 -0400 |
commit | 075f6aa5823fedc5a667a8032d14915dd31231a4 (patch) | |
tree | 7eb823e436706a7271b8b66230420b24f320500d /src | |
parent | f38f03fd5c0b267916d1f48a87afff67ad9ab3ed (diff) | |
download | blackbird-hostboot-075f6aa5823fedc5a667a8032d14915dd31231a4.tar.gz blackbird-hostboot-075f6aa5823fedc5a667a8032d14915dd31231a4.zip |
Use word instructions for MMIO accesses in Bootloader
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>
Diffstat (limited to 'src')
-rw-r--r-- | src/bootloader/bl_pnorAccess.C | 4 | ||||
-rw-r--r-- | src/bootloader/bootloader.C | 4 | ||||
-rw-r--r-- | src/build/debug/Hostboot/BlTrace.pm | 3 |
3 files changed, 7 insertions, 4 deletions
diff --git a/src/bootloader/bl_pnorAccess.C b/src/bootloader/bl_pnorAccess.C index 991011872..e5e790426 100644 --- a/src/bootloader/bl_pnorAccess.C +++ b/src/bootloader/bl_pnorAccess.C @@ -129,7 +129,7 @@ void bl_pnorAccess::findTOC(uint64_t i_pnorEnd, PNOR::SectionData_t * o_TOC, Bootloader::handleMMIO(i_pnorEnd - PNOR::TOC_OFFSET_FROM_TOP_OF_FLASH, reinterpret_cast<uint64_t>(l_tocBuffer), (PNOR::TOC_SIZE), - Bootloader::BYTESIZE); + Bootloader::WORDSIZE); BOOTLOADER_TRACE(BTLDR_TRC_PA_FINDTOC_TOC1_HANDLEMMIO_RTN); @@ -147,7 +147,7 @@ void bl_pnorAccess::findTOC(uint64_t i_pnorEnd, PNOR::SectionData_t * o_TOC, Bootloader::handleMMIO(o_pnorStart, reinterpret_cast<uint64_t>(l_tocBuffer), (PNOR::TOC_SIZE), - Bootloader::BYTESIZE); + Bootloader::WORDSIZE); o_errCode = 0; readTOC(l_tocBuffer, o_errCode, o_TOC, o_pnorStart, i_pnorEnd); diff --git a/src/bootloader/bootloader.C b/src/bootloader/bootloader.C index ec9b12c4a..8a129b7f3 100644 --- a/src/bootloader/bootloader.C +++ b/src/bootloader/bootloader.C @@ -112,7 +112,7 @@ namespace Bootloader{ (l_hbbEcc) ? HBB_ECC_WORKING_ADDR : HBB_WORKING_ADDR, (l_hbbEcc) ? (l_hbbLength * LENGTH_W_ECC)/LENGTH_WO_ECC : l_hbbLength, - BYTESIZE); + WORDSIZE); BOOTLOADER_TRACE(BTLDR_TRC_MAIN_WORKING_HANDLEMMIO_RTN); PNOR::ECC::eccStatus rc = PNOR::ECC::CLEAN; @@ -188,7 +188,7 @@ namespace Bootloader{ uint32_t i_size, MMIOLoadStoreSizes i_ld_st_size) { - BOOTLOADER_TRACE(BTLDR_TRC_HANDLEMMIO_START); + BOOTLOADER_TRACE(BTLDR_TRC_HANDLEMMIO_START + i_ld_st_size); // Set base addresses, Ignore HRMOR setting uint64_t l_srcAddr_base = i_srcAddr | IGNORE_HRMOR_MASK; diff --git a/src/build/debug/Hostboot/BlTrace.pm b/src/build/debug/Hostboot/BlTrace.pm index 9574135c9..aeecf2ec4 100644 --- a/src/build/debug/Hostboot/BlTrace.pm +++ b/src/build/debug/Hostboot/BlTrace.pm @@ -37,6 +37,9 @@ my %traceText = ( "14" => "Main applySecureSignatureValidation returned", "15" => "Main copy HBB to running location done", "20" => "HandleMMIO started", + "21" => "HandleMMIO started using BYTESIZE", + "24" => "HandleMMIO started using WORDSIZE", + "28" => "HandleMMIO started using DBLWORDSIZE", "30" => "PNOR Access getHBBSection started", "31" => "PNOR Access findTOC handleMMIO to copy TOC ONE returned", "32" => "PNOR Access findTOC readTOC for TOC ONE returned", |