diff options
author | Bill Schwartz <whs@us.ibm.com> | 2012-11-14 17:44:58 -0600 |
---|---|---|
committer | A. Patrick Williams III <iawillia@us.ibm.com> | 2012-11-26 11:47:47 -0600 |
commit | 692e2d0be68203b35f802189178a0a8aa86e3198 (patch) | |
tree | c328e08ae5e551d5a174d8e155b8259ddb40bd89 /src/usr/hwpf/hwp/mvpd_accessors/setMvpdRing.C | |
parent | d50453d4bb2bdd9eb8f346fc6990349aa08cf957 (diff) | |
download | talos-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.C | 76 |
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" |