diff options
author | Marty Gloff <mgloff@us.ibm.com> | 2016-05-19 09:30:00 -0500 |
---|---|---|
committer | Stephen Cprek <smcprek@us.ibm.com> | 2016-07-18 15:32:27 -0500 |
commit | bc843b94d9125b5e864672ec8de20ff92bfca61c (patch) | |
tree | a535c90c5a6e148045bfff5cf81210e4a6b2b05c /src | |
parent | 1b968d7a2f1860e1704c77d7bf126486c46dd11f (diff) | |
download | talos-hostboot-bc843b94d9125b5e864672ec8de20ff92bfca61c.tar.gz talos-hostboot-bc843b94d9125b5e864672ec8de20ff92bfca61c.zip |
Platform support for FAPI2 winkle/stop ring accessors
Add getMvpdRing function and supporting utility functions by porting P8
code and replacing FAPI interfaces with FAPI2 interfaces.
Change-Id: Iee290652c559015b2113521747c491ee2bb154c2
Original-Change-Id: Ied4895f560177a8c68e57ac47db9d9769a04dbdd
RTC:142622
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/24800
Tested-by: Jenkins Server
Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Reviewed-by: Claus M. Olsen <cmolsen@us.ibm.com>
Reviewed-by: Jennifer A. Stofer <stofer@us.ibm.com>
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/26926
Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com>
Diffstat (limited to 'src')
-rw-r--r-- | src/import/chips/p9/procedures/hwp/accessors/p9_mvpd_ring_funcs.H | 78 | ||||
-rw-r--r-- | src/import/chips/p9/procedures/hwp/accessors/p9_mvpd_ring_funcs.mk | 23 |
2 files changed, 101 insertions, 0 deletions
diff --git a/src/import/chips/p9/procedures/hwp/accessors/p9_mvpd_ring_funcs.H b/src/import/chips/p9/procedures/hwp/accessors/p9_mvpd_ring_funcs.H new file mode 100644 index 000000000..4e9f70112 --- /dev/null +++ b/src/import/chips/p9/procedures/hwp/accessors/p9_mvpd_ring_funcs.H @@ -0,0 +1,78 @@ +/* IBM_PROLOG_BEGIN_TAG */ +/* This is an automatically generated prolog. */ +/* */ +/* $Source: chips/p9/procedures/hwp/accessors/p9_mvpd_ring_funcs.H $ */ +/* */ +/* IBM CONFIDENTIAL */ +/* */ +/* EKB Project */ +/* */ +/* COPYRIGHT 2012,2016 */ +/* [+] International Business Machines Corp. */ +/* */ +/* */ +/* The source code for this program is not published or otherwise */ +/* divested of its trade secrets, irrespective of what has been */ +/* deposited with the U.S. Copyright Office. */ +/* */ +/* IBM_PROLOG_END_TAG */ +// $Id: p9_mvpd_ring_funcs.H,v 1.4 2014/07/16 19:07:08 cswenson Exp $ +/** + * @file p9_mvpd_ring_funcs.H + * + * @brief Prototype for p9_mvpd_ring_funcs() + */ + +#ifndef _HWP_MVPDRINGFUNCS_ +#define _HWP_MVPDRINGFUNCS_ + +#include <fapi2.H> + +namespace fapi2 +{ +/// +/// @brief Enumeration of mvpdRingFunc ops +/// +enum mvpdRingFuncOp +{ + MVPD_RING_GET, + MVPD_RING_SET, +}; + +extern "C" +{ + + /** + * @brief get or set the requested ring for the record and keyword + * for the specified target CPU. + * + * detailed comments on get and set are in the + * getMvpdRing.H and setMvpdRing.H and apply here as well. + * + * @param i_mvpdRingFuncOp - indicate get or set via enum mvpdRingFuncOp + * @param i_record - Record enumerator + * @param i_keyword - Keyword enumerator + * @param i_fapiTarget - cpu target + * @param i_chipletId - Chiplet ID + * @param i_ringId - Ring ID + * @param i_pRingBuf - The buffer to receive or send the ring + * @param io_rRingBufsize - Size of ring / ring buffer + * + * @return fapi2::ReturnCode - FAPI_RC_SUCCESS if success, + * relevant error code for failure. + */ + ReturnCode mvpdRingFunc(mvpdRingFuncOp i_mvpdRingFuncOp, + MvpdRecord i_record, + MvpdKeyword i_keyword, + const Target<TARGET_TYPE_PROC_CHIP>& + i_fapiTarget, + const uint8_t i_chipletId, + const uint8_t i_ringId, + uint8_t* i_pRingBuf, + uint32_t& io_rRingBufsize); + +} // extern "C" + +} // namespace fapi2 + +#endif diff --git a/src/import/chips/p9/procedures/hwp/accessors/p9_mvpd_ring_funcs.mk b/src/import/chips/p9/procedures/hwp/accessors/p9_mvpd_ring_funcs.mk new file mode 100644 index 000000000..20d1d2de5 --- /dev/null +++ b/src/import/chips/p9/procedures/hwp/accessors/p9_mvpd_ring_funcs.mk @@ -0,0 +1,23 @@ +# IBM_PROLOG_BEGIN_TAG +# This is an automatically generated prolog. +# +# $Source: chips/p9/procedures/hwp/accessors/p9_mvpd_ring_funcs.mk $ +# +# IBM CONFIDENTIAL +# +# EKB Project +# +# COPYRIGHT 2016 +# [+] International Business Machines Corp. +# +# +# The source code for this program is not published or otherwise +# divested of its trade secrets, irrespective of what has been +# deposited with the U.S. Copyright Office. +# +# IBM_PROLOG_END_TAG + +# Include the macros and things for MVPD ring procedures +PROCEDURE=p9_mvpd_ring_funcs +$(call ADD_MODULE_INCDIR,$(PROCEDURE),$(ROOTPATH)/chips/p9/utils/imageProcs) +$(call BUILD_PROCEDURE) |