|
Work-around for HW415185. On a cumulus system reads from
the first 6 DMI SCOM registers need to be read twice to
obtain correct values. It is desired to implement a
workaround in the SCOM driver that will force a retry
for any reads from these registers until a hardware
fix is in place.
*Implemented a framework for executing post operation
actions following a scom device operation. Currently
the only post operation action defined is the retry
request operation. The purpose of the framework is
to remove workaround logic from the device operation
code and place it in easily removable individual source
files as work-arounds are expected to be temporary in
nature.
*Move existing retry request for IBSCOM retries to
a new class IbScomRetry.
*Created the PostOpRetryCheck base class for the
workaround framework.
*Created a top-level composite pattern class used for
invoking request logic - PostOpChecks.
*Created a workaround class - DmiSomWorkaround
for querying DMI retry requests.
*Modified the doScomOp method to invoke the framework
to test for retries. Removed retry recursion.
*Created Unit Tests.
*Created integration test.
RTC: 177025
Change-Id: If4a1ecc57dd5978e5d1717a42c63cdc1698f4563
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/45104
Tested-by: Jenkins Server <pfd-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>
Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com>
Reviewed-by: Prachi Gupta <pragupta@us.ibm.com>
Reviewed-by: Corey V. Swenson <cswenson@us.ibm.com>
Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
|