summaryrefslogtreecommitdiffstats
path: root/src/include/usr/ibscom
diff options
context:
space:
mode:
authorCorey Swenson <cswenson@us.ibm.com>2018-03-23 10:49:35 -0500
committerDaniel M. Crowell <dcrowell@us.ibm.com>2018-04-02 13:44:41 -0400
commitb51298075aee402dbcef485088cfa71a6ca61725 (patch)
tree21bd59df20830b108f6b3f6dd835915c28691ec7 /src/include/usr/ibscom
parent55f0053bc34e10d118e383f782b7be5cb14f59d2 (diff)
downloadtalos-hostboot-b51298075aee402dbcef485088cfa71a6ca61725.tar.gz
talos-hostboot-b51298075aee402dbcef485088cfa71a6ca61725.zip
Add ibscom runtime support
- Add ibscom runtime files - Make ibscom multicast workaround common - Call from ibscom rt_ibscom - Make scom sanity check common - Call from xscom rt_xscom ibscom rt_ibscom RTC:190144 Change-Id: Ia52feac596ff6b6c8fb9f0db4493f35e4ee837af Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/56215 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: Martin Gloff <mgloff@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Diffstat (limited to 'src/include/usr/ibscom')
-rw-r--r--src/include/usr/ibscom/ibscomif.H46
1 files changed, 44 insertions, 2 deletions
diff --git a/src/include/usr/ibscom/ibscomif.H b/src/include/usr/ibscom/ibscomif.H
index f539caf90..41e9f0cdd 100644
--- a/src/include/usr/ibscom/ibscomif.H
+++ b/src/include/usr/ibscom/ibscomif.H
@@ -5,7 +5,9 @@
/* */
/* OpenPOWER HostBoot Project */
/* */
-/* COPYRIGHT International Business Machines Corp. 2013,2014 */
+/* Contributors Listed Below - COPYRIGHT 2013,2018 */
+/* [+] 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. */
@@ -26,6 +28,7 @@
#include <stdint.h>
#include <builtins.h>
#include <errl/errlentry.H>
+#include <devicefw/driverif.H>
namespace IBSCOM
{
@@ -40,6 +43,45 @@ namespace IBSCOM
*/
void enableInbandScoms( bool i_disable = IBSCOM_ENABLE );
-}
+/**
+ * @brief Multicast this ibscom address
+ *
+ * @param[in] i_opType read/write
+ * @param[in] i_target target membuf
+ * @param[inout] io_buffer return data
+ * @param[inout] io_buflen return data length
+ * @param[in] i_addr inband scom address
+ * @param[out] o_didWorkaround return indicator
+ *
+ * @return error log on fail
+ */
+errlHndl_t doIBScomMulticast( DeviceFW::OperationType i_opType,
+ TARGETING::Target* i_target,
+ void* io_buffer,
+ size_t& io_buflen,
+ uint64_t i_addr,
+ bool& o_didWorkaround );
+
+#ifndef __HOSTBOOT_RUNTIME
+/**
+ * @brief Perform ibscom
+ *
+ * @param[in] i_opType read/write
+ * @param[in] i_target target membuf
+ * @param[inout] io_buffer return data
+ * @param[inout] io_buflen return data length
+ * @param[in] i_addr inband scom address
+ * @param[in] i_errDataPath generate SUE error
+ *
+ * @return error log on fail
+ */
+errlHndl_t doIBScom(DeviceFW::OperationType i_opType,
+ TARGETING::Target* i_target,
+ void* io_buffer,
+ size_t& io_buflen,
+ uint64_t i_addr,
+ bool i_errDataPath);
+#endif
+} // end namespace IBSCOM
#endif
OpenPOWER on IntegriCloud