diff options
author | Matt Derksen <mderkse1@us.ibm.com> | 2018-10-15 10:22:11 -0500 |
---|---|---|
committer | Daniel M. Crowell <dcrowell@us.ibm.com> | 2018-11-29 17:06:46 -0600 |
commit | b3290cc00d1768adf99a2c01472626b6eaeea17d (patch) | |
tree | 4b07a473f7cf448d2eac5c6f808be427380ab34c /src/include/usr/targeting/common | |
parent | 546c014e9b53011575917fcb66238ba28fcf5fe5 (diff) | |
download | talos-hostboot-b3290cc00d1768adf99a2c01472626b6eaeea17d.tar.gz talos-hostboot-b3290cc00d1768adf99a2c01472626b6eaeea17d.zip |
Fix predicateHwasChanged to only check subscribed bits
Found issue while running testGard11 in hwasGardTest.H
OBUS bricks were coming back changed but they did not change.
Change-Id: Icf2d27b06f8bf44dc2e0aefb881d9e2b50dcc677
Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/67476
Reviewed-by: Nicholas E. Bofferding <bofferdn@us.ibm.com>
Reviewed-by: Christian R. Geddes <crgeddes@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>
Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com>
Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com>
Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Diffstat (limited to 'src/include/usr/targeting/common')
-rw-r--r-- | src/include/usr/targeting/common/predicates/predicatehwaschanged.H | 30 |
1 files changed, 18 insertions, 12 deletions
diff --git a/src/include/usr/targeting/common/predicates/predicatehwaschanged.H b/src/include/usr/targeting/common/predicates/predicatehwaschanged.H index 9e833a8b4..8301dfea3 100644 --- a/src/include/usr/targeting/common/predicates/predicatehwaschanged.H +++ b/src/include/usr/targeting/common/predicates/predicatehwaschanged.H @@ -5,7 +5,9 @@ /* */ /* OpenPOWER HostBoot Project */ /* */ -/* COPYRIGHT International Business Machines Corp. 2013,2014 */ +/* Contributors Listed Below - COPYRIGHT 2013,2018 */ +/* [+] International Business Machines Corp. */ +/* */ /* */ /* Licensed under the Apache License, Version 2.0 (the "License"); */ /* you may not use this file except in compliance with the License. */ @@ -81,7 +83,10 @@ class PredicateHwasChanged : public PredicateBase virtual ~PredicateHwasChanged(); /** - * @brief Reset the predicate to match everything + * @brief Reset the predicate to the cleared state + * This cleared state is an invalid state. + * User needs to identify a bit to check for + * change after this reset * * @return Reference to the predicate, for chaining */ @@ -90,6 +95,9 @@ class PredicateHwasChanged : public PredicateBase /** * @brief Configure predicate to look for the setting of a particular * bit in the HWAS_CHANGED_STATE_FLAG + * If this is called multiple times with different bits, then + * a change will only be detected if ALL the changedBits match + * their desired setting. * * @param[in] i_bit HWAS_CHANGED_BIT * @param[in] i_changed Desired changed setting of that bit @@ -114,16 +122,14 @@ class PredicateHwasChanged : public PredicateBase * @brief Returns whether target matches the desired HWAS state * * @par Detailed Description: - * Returns whether target matches the desired HWAS state. Current - * HWAS sub-fields compared include poweredOn, present, functional, - * changedSinceLastIpl, and dumpFunctional. On construction, the - * predicate matches any state of those fields. To make the - * filter more restrictive, call any combination of the state - * configuration functions with the desired values. The filter - * will make sure all the desired fields have requested values - * before returning a match. To reset the filter to match all - * targets, call reset(). See PredicateBase class for - * parameter/return description. + * Will assert if no desired state has been setup. + * This only checks for a change on subscribed bits associated + * with the target. + * To make the filter more restrictive, call any combination of + * the state configuration functions with the desired values. + * The filter will make sure ALL (exclusive match) the desired + * fields have requested values before returning a match. + * See PredicateBase class for parameter/return description. * * @param[in] i_pTarget * Target handle pointing to the target to compare to |