summaryrefslogtreecommitdiffstats
path: root/src/import/generic/memory/lib/utils/find.H
diff options
context:
space:
mode:
authorLouis Stermole <stermole@us.ibm.com>2019-04-11 17:06:23 -0400
committerChristian R. Geddes <crgeddes@us.ibm.com>2019-04-25 12:35:39 -0500
commit357441ef8b732b8f2b0a697d2ae7c368b3646649 (patch)
treed1349d29077d8b7363ec7de33fb337934e25ec56 /src/import/generic/memory/lib/utils/find.H
parentaff20d90b9673ae57b1d54996ace5ce9a11ea394 (diff)
downloadtalos-hostboot-357441ef8b732b8f2b0a697d2ae7c368b3646649.tar.gz
talos-hostboot-357441ef8b732b8f2b0a697d2ae7c368b3646649.zip
Add p9a_mss_freq_system procedure
Change-Id: I84317d4886e90aece64ada26d3d7d53ba0868f1e Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/76023 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Tested-by: PPE CI <ppe-ci+hostboot@us.ibm.com> Reviewed-by: STEPHEN GLANCY <sglancy@us.ibm.com> Tested-by: HWSV CI <hwsv-ci+hostboot@us.ibm.com> Tested-by: Hostboot CI <hostboot-ci+hostboot@us.ibm.com> Reviewed-by: ANDRE A. MARIN <aamarin@us.ibm.com> Dev-Ready: Christian R. Geddes <crgeddes@us.ibm.com> Reviewed-by: Jennifer A. Stofer <stofer@us.ibm.com> Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/76104 Reviewed-by: Christian R. Geddes <crgeddes@us.ibm.com>
Diffstat (limited to 'src/import/generic/memory/lib/utils/find.H')
-rw-r--r--src/import/generic/memory/lib/utils/find.H27
1 files changed, 27 insertions, 0 deletions
diff --git a/src/import/generic/memory/lib/utils/find.H b/src/import/generic/memory/lib/utils/find.H
index 1d5744cbe..bfae8a1c5 100644
--- a/src/import/generic/memory/lib/utils/find.H
+++ b/src/import/generic/memory/lib/utils/find.H
@@ -231,6 +231,33 @@ find_targets( const fapi2::Target<fapi2::TARGET_TYPE_PROC_CHIP>& i_target,
}
///
+/// @brief find all the MEM_PORTs connected to a PROC_CHIP
+/// @param[in] i_target a fapi2::Target PROC_CHIP
+/// @return a vector of fapi2::TARGET_TYPE_MEM_PORT
+///
+template<>
+inline std::vector< fapi2::Target<fapi2::TARGET_TYPE_MEM_PORT> >
+find_targets( const fapi2::Target<fapi2::TARGET_TYPE_PROC_CHIP>& i_target,
+ fapi2::TargetState i_state )
+{
+ std::vector< fapi2::Target<fapi2::TARGET_TYPE_MEM_PORT> > l_ports;
+
+ for (const auto& l_mc : i_target.getChildren<fapi2::TARGET_TYPE_MC>(i_state))
+ {
+ for (const auto& l_omi : l_mc.getChildren<fapi2::TARGET_TYPE_OMI>(i_state))
+ {
+ for (const auto& l_ocmb : l_omi.getChildren<fapi2::TARGET_TYPE_OCMB_CHIP>(i_state))
+ {
+ auto l_these_ports( l_ocmb.getChildren<fapi2::TARGET_TYPE_MEM_PORT>(i_state) );
+ l_ports.insert(l_ports.end(), l_these_ports.begin(), l_these_ports.end());
+ }
+ }
+ }
+
+ return l_ports;
+}
+
+///
/// @brief find all the MBA connected to an DMI
/// @param[in] i_target a fapi2::Target DMI
/// @return a vector of fapi2::TARGET_TYPE_MBA
OpenPOWER on IntegriCloud