summaryrefslogtreecommitdiffstats
path: root/src/include/usr
diff options
context:
space:
mode:
authorDan Crowell <dcrowell@us.ibm.com>2019-11-04 12:32:18 -0600
committerWilliam G Hoffa <wghoffa@us.ibm.com>2019-11-08 15:33:07 -0600
commit95bb7028eab0224dddf86f00540a7ee5a84808dc (patch)
tree8ed24eb9720e29266de8f088703c0957a09c1737 /src/include/usr
parent7c03d51c2cc1db8e950866a95fc4c94e564fb14f (diff)
downloadtalos-hostboot-95bb7028eab0224dddf86f00540a7ee5a84808dc.tar.gz
talos-hostboot-95bb7028eab0224dddf86f00540a7ee5a84808dc.zip
Move HBRT reserved memory off of NVDIMMs
On a NVDIMM system we need to make sure that we don't use the NV memory for the HOMER (or other reserved memory). Depending on the specific memory layout the NV memory could be placed at the top of memory where we would normally land. Change-Id: Ie4407c63a4944cc5be13d2573d06fbed09d6a11f CQ: SW470564 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/86480 Reviewed-by: Ilya Smirnov <ismirno@us.ibm.com> Reviewed-by: Corey V Swenson <cswenson@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: Matt Derksen <mderkse1@us.ibm.com> Reviewed-by: William G Hoffa <wghoffa@us.ibm.com>
Diffstat (limited to 'src/include/usr')
-rw-r--r--src/include/usr/isteps/nvdimm/nvdimmif.H16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/include/usr/isteps/nvdimm/nvdimmif.H b/src/include/usr/isteps/nvdimm/nvdimmif.H
index 4ddfcf970..e96bb17d4 100644
--- a/src/include/usr/isteps/nvdimm/nvdimmif.H
+++ b/src/include/usr/isteps/nvdimm/nvdimmif.H
@@ -42,6 +42,22 @@ namespace NVDIMM
*/
void getNVDIMMs( std::list<EEPROM::EepromInfo_t>& o_info );
+/**
+ * @brief Check if given address is owned by nvdimms and return
+ a new address that isn't if it was
+ * @param[in] i_topAddr = High mainstore address (see get_top_homer_mem_addr)
+ * @return uint64_t - Highest address without a nvdimm
+ */
+uint64_t get_top_addr_with_no_nvdimms( uint64_t i_topAddr );
+
+// Make a very simple inline if we don't support NVDIMMs in this compile
+#ifndef CONFIG_NVDIMM
+inline uint64_t get_top_addr_with_no_nvdimms( uint64_t i_topAddr )
+{
+ return i_topAddr;
+};
+#endif
+
}; // end namespace NVDIMM
#endif // end __NVDIMMIF_H
OpenPOWER on IntegriCloud