summaryrefslogtreecommitdiffstats
path: root/src/include/usr/hwpf
diff options
context:
space:
mode:
authorBill Schwartz <whs@us.ibm.com>2014-09-22 08:21:04 -0500
committerA. Patrick Williams III <iawillia@us.ibm.com>2014-10-06 10:18:00 -0500
commit79ab9af6f2d2413c4154226e6dd5b99c00df2873 (patch)
tree7c0434989d1c5dbdd57437e6d721247942edb765 /src/include/usr/hwpf
parent750cf6dfb94beb118c3618e2bd43af0314ed37fd (diff)
downloadblackbird-hostboot-79ab9af6f2d2413c4154226e6dd5b99c00df2873.tar.gz
blackbird-hostboot-79ab9af6f2d2413c4154226e6dd5b99c00df2873.zip
Enable OCB channel communications
Port FSP hwcoOCC.C and hwsvTestSvcOCC_impl.C to provide ocb indirect access. Change-Id: I8d5a69feb26810e97a77f4970647af4ae6bbaad1 RTC: 115584 Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/13517 Tested-by: Jenkins Server Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com> Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
Diffstat (limited to 'src/include/usr/hwpf')
-rw-r--r--src/include/usr/hwpf/hwp/occ/occAccess.H74
-rw-r--r--src/include/usr/hwpf/hwpf_reasoncodes.H11
2 files changed, 79 insertions, 6 deletions
diff --git a/src/include/usr/hwpf/hwp/occ/occAccess.H b/src/include/usr/hwpf/hwp/occ/occAccess.H
new file mode 100644
index 000000000..b13f280af
--- /dev/null
+++ b/src/include/usr/hwpf/hwp/occ/occAccess.H
@@ -0,0 +1,74 @@
+/* IBM_PROLOG_BEGIN_TAG */
+/* This is an automatically generated prolog. */
+/* */
+/* $Source: src/include/usr/hwpf/hwp/occ/occAccess.H $ */
+/* */
+/* OpenPOWER HostBoot Project */
+/* */
+/* Contributors Listed Below - COPYRIGHT 2014 */
+/* [+] 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. */
+/* You may obtain a copy of the License at */
+/* */
+/* http://www.apache.org/licenses/LICENSE-2.0 */
+/* */
+/* Unless required by applicable law or agreed to in writing, software */
+/* distributed under the License is distributed on an "AS IS" BASIS, */
+/* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or */
+/* implied. See the License for the specific language governing */
+/* permissions and limitations under the License. */
+/* */
+/* IBM_PROLOG_END_TAG */
+#ifndef OCCACCESS_H_
+#define OCCACCESS_H_
+
+#include <config.h>
+#include <errl/errlentry.H>
+#include <targeting/common/commontargeting.H>
+#include <fapi.H>
+
+#ifdef CONFIG_HTMGT
+namespace HBOCC
+{
+
+ /**
+ * @brief Read OCC SRAM
+ *
+ * @param[in] i_pTarget PROC or OCC target pointer
+ * @param[in] i_addr OCI Address to be used for the operation
+ * @param[in,out] io_dataBuf Reference to data buffer
+ * @return errlHndl_t Error log if operation failed
+ */
+ errlHndl_t readSRAM(const TARGETING::Target*i_pTarget,
+ const uint32_t i_addr,
+ ecmdDataBufferBase & io_dataBuf);
+
+ /**
+ * @brief Write OCC SRAM
+ *
+ * @param[in] i_pTarget PROC or OCC target pointer
+ * @param[in] i_addr OCI Address to be used for the operation
+ * @param[in] i_dataBuf Reference to data buffer
+ * @return errlHndl_t Error log if operation failed
+ */
+ errlHndl_t writeSRAM(const TARGETING::Target*i_pTarget,
+ const uint32_t i_addr,
+ ecmdDataBufferBase & io_dataBuf);
+
+ /**
+ * @brief Write OCC Circular Buffer
+ *
+ * @param[in] i_pTarget PROC or OCC target pointer
+ * @param[in] i_dataBuf Reference to data buffer
+ * @return errlHndl_t Error log if operation failed
+ */
+ errlHndl_t writeCircularBuffer(const TARGETING::Target*i_pTarget,
+ ecmdDataBufferBase & i_dataBuf);
+
+} //end OCC namespace
+#endif // CONFIG_HTMGT
+
+#endif
diff --git a/src/include/usr/hwpf/hwpf_reasoncodes.H b/src/include/usr/hwpf/hwpf_reasoncodes.H
index 24eb3ee33..344117d25 100644
--- a/src/include/usr/hwpf/hwpf_reasoncodes.H
+++ b/src/include/usr/hwpf/hwpf_reasoncodes.H
@@ -71,6 +71,8 @@ namespace fapi
MOD_ATTR_OVERRIDE = 0x1D,
MOD_PLAT_SPECIAL_WAKEUP = 0x1E,
MOD_PLAT_EN_VDDR = 0x1F,
+ MOD_GET_OCC_CHIP_TARGET = 0x20,
+ MOD_ACCESS_OCB_INDIRECT_CHANNEL = 0x21,
};
@@ -107,25 +109,22 @@ namespace fapi
RC_NO_SINGLE_MCS = HWPF_COMP_ID | 0x21,
RC_NO_SINGLE_MEMBUFF = HWPF_COMP_ID | 0x22,
RC_STATE_MISMATCH = HWPF_COMP_ID | 0x23,
-
- // OCC Errors
RC_MM_UNMAP_ERR = HWPF_COMP_ID | 0x24,
-
- // VDDR Errors
RC_VDDR_EMPTY_MSG = HWPF_COMP_ID | 0x25,
RC_VDDR_ERROR_MSG = HWPF_COMP_ID | 0x26,
RC_VDDR_POWR_ERR = HWPF_COMP_ID | 0x27,
RC_INCORRECT_MSG_TYPE = HWPF_COMP_ID | 0x28,
-
RC_NO_SINGLE_MBA = HWPF_COMP_ID | 0x29,
RC_HOST_TIMER_EXPIRED = HWPF_COMP_ID | 0x2A,
RC_HOST_TIMER_THREAD_FAIL = HWPF_COMP_ID | 0x2B,
RC_NULL_POINTER = HWPF_COMP_ID | 0x2C,
-
RC_RT_WAKEUP_FAILED = HWPF_COMP_ID | 0x2D,
RC_NO_MIRRORED_MEMORY = HWPF_COMP_ID | 0x2E,
RC_VDDR_INVALID_VOLTAGE = HWPF_COMP_ID | 0x2F,
RC_TIMEOUT_EN_VDDR = HWPF_COMP_ID | 0x30,
+ RC_TARGET_UNSUPPORTED = HWPF_COMP_ID | 0x31,
+ RC_INVALID_DATA_BUFFER_LENGTH = HWPF_COMP_ID | 0x32,
+
};
/**
OpenPOWER on IntegriCloud