summaryrefslogtreecommitdiffstats
path: root/src/usr/hwpf/hwp/mvpd_accessors/setMvpdRing.C
diff options
context:
space:
mode:
authorBill Schwartz <whs@us.ibm.com>2012-11-14 17:44:58 -0600
committerA. Patrick Williams III <iawillia@us.ibm.com>2012-11-26 11:47:47 -0600
commit692e2d0be68203b35f802189178a0a8aa86e3198 (patch)
treec328e08ae5e551d5a174d8e155b8259ddb40bd89 /src/usr/hwpf/hwp/mvpd_accessors/setMvpdRing.C
parentd50453d4bb2bdd9eb8f346fc6990349aa08cf957 (diff)
downloadtalos-hostboot-692e2d0be68203b35f802189178a0a8aa86e3198.tar.gz
talos-hostboot-692e2d0be68203b35f802189178a0a8aa86e3198.zip
MVPD Accessor Function: #G Rings
Get/Set Repair Ring becomes Get/Set Mvpd Func. Passing record and keyword to generalize to include #G as well as #R The renames look like deleted and new files. Moved more common code to mvpdRingFuncs.C. Get/Set are thin wrappers. Add the #G keyword to fapPlatMvpdAccess and Mvpd DD Add another return code to mvpd_errors Add endian tranformation to fapi and fapi platform. Cronus needs this. Mvpd is in big indian. Word access wrapped in maros. Add set ability to set a smaller ring, shift the rest of the rings left set a larger ring, shift the rest of the rings right if it fits append a ring that was not there before, if it fits Much of the test case is #if'ed out pending mvpd dd write RTC 39177 I'm still working on adding #G and #R rings to procdata.dat which will cover part of RTC 51716. I run the complete tests in unit test. Change-Id: I5b04cd0fcff3046b8d0b7c8a4caf51da258187ee RTC: 52849 Reviewed-on: http://gfw160.austin.ibm.com:8080/gerrit/2344 Tested-by: Jenkins Server Reviewed-by: MIKE J. JONES <mjjones@us.ibm.com> Reviewed-by: Brian H. Horton <brianh@linux.ibm.com> Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
Diffstat (limited to 'src/usr/hwpf/hwp/mvpd_accessors/setMvpdRing.C')
-rw-r--r--src/usr/hwpf/hwp/mvpd_accessors/setMvpdRing.C76
1 files changed, 76 insertions, 0 deletions
diff --git a/src/usr/hwpf/hwp/mvpd_accessors/setMvpdRing.C b/src/usr/hwpf/hwp/mvpd_accessors/setMvpdRing.C
new file mode 100644
index 000000000..17fd56be2
--- /dev/null
+++ b/src/usr/hwpf/hwp/mvpd_accessors/setMvpdRing.C
@@ -0,0 +1,76 @@
+ /* IBM_PROLOG_BEGIN_TAG
+ * This is an automatically generated prolog.
+ *
+ * $Source: src/usr/hwpf/hwp/setMvpdRing.C $
+ *
+ * IBM CONFIDENTIAL
+ *
+ * COPYRIGHT International Business Machines Corp. 2012
+ *
+ * p1
+ *
+ * Object Code Only (OCO) source materials
+ * Licensed Internal Code Source Materials
+ * IBM HostBoot Licensed Internal Code
+ *
+ * The source code for this program is not published or other-
+ * wise divested of its trade secrets, irrespective of what has
+ * been deposited with the U.S. Copyright Office.
+ *
+ * Origin: 30
+ *
+ * IBM_PROLOG_END_TAG
+ */
+/**
+ * @file setMvpdRing.C
+ *
+ * @brief update rings in MVPD records
+ *
+ */
+
+#include <stdint.h>
+
+// fapi support
+#include <fapi.H>
+
+#include <setMvpdRing.H>
+#include <mvpdRingFuncs.H>
+
+extern "C"
+{
+using namespace fapi;
+
+// setMvpdRing: Wrapper to call common function mvpdRingFunc
+fapi::ReturnCode setMvpdRing( fapi::MvpdRecord i_record,
+ fapi::MvpdKeyword i_keyword,
+ const fapi::Target &i_fapiTarget,
+ const uint8_t i_chipletId,
+ const uint8_t i_ringId,
+ uint8_t *i_pRingBuf,
+ uint32_t i_rRingBufsize)
+{
+ fapi::ReturnCode l_fapirc;
+
+ FAPI_DBG("setMvpdRing: entry ringId=0x%x, chipletId=0x%x, size=0x%x ",
+ i_ringId,
+ i_chipletId,
+ i_rRingBufsize );
+
+ // common get and set processing
+ l_fapirc = mvpdRingFunc(MVPD_RING_SET,
+ i_record,
+ i_keyword,
+ i_fapiTarget,
+ i_chipletId,
+ i_ringId,
+ i_pRingBuf,
+ i_rRingBufsize); //in and out for common code.
+ //in only for set.
+
+ FAPI_DBG("setMvpdRing: exit rc=0x%x",
+ static_cast<uint32_t>(l_fapirc) );
+
+ return l_fapirc;
+}
+
+} // extern "C"
OpenPOWER on IntegriCloud