summaryrefslogtreecommitdiffstats
path: root/src/bootloader
diff options
context:
space:
mode:
authorMarty Gloff <mgloff@us.ibm.com>2017-06-08 13:29:15 -0500
committerDaniel M. Crowell <dcrowell@us.ibm.com>2017-06-28 16:01:35 -0400
commitb29154df590cec5b8fd11d5fd228332c95c8f915 (patch)
treecd42b6e43fda058ba502a1209c87d643132ea738 /src/bootloader
parentab2b3a0f07219b0a3c51b7215bb4b1b4f42deb08 (diff)
downloadtalos-hostboot-b29154df590cec5b8fd11d5fd228332c95c8f915.tar.gz
talos-hostboot-b29154df590cec5b8fd11d5fd228332c95c8f915.zip
Remove Hacks / Workarounds put in by commits 41463 and 41574
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>
Diffstat (limited to 'src/bootloader')
-rw-r--r--src/bootloader/bootloader.C17
1 files changed, 11 insertions, 6 deletions
diff --git a/src/bootloader/bootloader.C b/src/bootloader/bootloader.C
index d7e092012..5d5fe2681 100644
--- a/src/bootloader/bootloader.C
+++ b/src/bootloader/bootloader.C
@@ -52,6 +52,10 @@
extern char bootloader_end_address;
+// XSCOM/LPC BAR constants
+const uint64_t XSCOM_BAR_MASK = 0xFF000003FFFFFFFFULL;
+const uint64_t LPC_BAR_MASK = 0xFF000000FFFFFFFFULL;
+
namespace Bootloader{
/**
@@ -129,9 +133,10 @@ namespace Bootloader{
// Copy values for MMIO BARs
g_blData->blToHbData.xscomBAR
- = /* (l_blConfigData->version >= MMIO_BARS_ADDED)
+ = ((l_blConfigData->version >= MMIO_BARS_ADDED) &&
+ ((l_blConfigData->xscomBAR & XSCOM_BAR_MASK) == 0))
? l_blConfigData->xscomBAR
- : @fixme-RTC:149250-Remove */ MMIO_GROUP0_CHIP0_XSCOM_BASE_ADDR;
+ : MMIO_GROUP0_CHIP0_XSCOM_BASE_ADDR;
/* lpcBAR already copied in main() */
// Only set rest of BlToHbData if SecureROM is valid
@@ -296,13 +301,13 @@ namespace Bootloader{
// @TODO RTC:138268 Support multiple sides of PNOR in bootloader
// Copy SBE BL shared data into BL HB shared data
-/* const auto l_blConfigData = reinterpret_cast<BootloaderConfigData_t *>(
+ const auto l_blConfigData = reinterpret_cast<BootloaderConfigData_t *>(
SBE_HB_COMM_ADDR);
- @fixme-RTC:149250-Remove */
g_blData->blToHbData.lpcBAR
- = /* (l_blConfigData->version >= MMIO_BARS_ADDED)
+ = ((l_blConfigData->version >= MMIO_BARS_ADDED) &&
+ ((l_blConfigData->lpcBAR & LPC_BAR_MASK) == 0))
? l_blConfigData->lpcBAR
- : @fixme-RTC:149250-Remove */ MMIO_GROUP0_CHIP0_LPC_BASE_ADDR;
+ : MMIO_GROUP0_CHIP0_LPC_BASE_ADDR;
//pnorEnd is the end of flash, which is base of lpc, plus
//the offset of the FW space, plus the TOP memory address in FW space
OpenPOWER on IntegriCloud