summaryrefslogtreecommitdiffstats
path: root/src/occ_gpe0/gpe_util.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/occ_gpe0/gpe_util.c')
-rw-r--r--src/occ_gpe0/gpe_util.c30
1 files changed, 30 insertions, 0 deletions
diff --git a/src/occ_gpe0/gpe_util.c b/src/occ_gpe0/gpe_util.c
index 61ee5e9..c97baa1 100644
--- a/src/occ_gpe0/gpe_util.c
+++ b/src/occ_gpe0/gpe_util.c
@@ -28,6 +28,9 @@
#include "pss_constants.h"
#include "gpe_util.h"
#include "gpe_export.h"
+#include <fir_data_collect.h>
+#include <scom_util.h>
+
#define SPIPSS_P2S_ONGOING_MASK 0x8000000000000000
/*
@@ -216,6 +219,33 @@ void ipc_scom_operation(ipc_msg_t* cmd, void* arg)
}
/*
+ * Function Specification
+ *
+ * Name: ipc_fir_collection
+ *
+ * Description: Does a getscom or putscom for the 405
+ *
+ * End Function Specification
+ */
+void ipc_fir_collection(ipc_msg_t* cmd, void* arg)
+{
+ int l_rc;
+ PK_TRACE("ipc_fir_collection: starting fir_data_collect");
+
+ fir_data_collect();
+
+ // send back a response, IPC success even if ffdc/rc are non zeros
+ l_rc = ipc_send_rsp(cmd, IPC_RC_SUCCESS);
+ if(l_rc)
+ {
+ PK_TRACE("ipc_fir_collection: Failed to send response back. Halting GPE0", l_rc);
+ pk_halt();
+ }
+
+ PK_TRACE("ipc_fir_collection: fir_data_collect finished");
+}
+
+/*
* Function Specification:
*
* Name: gpe0_nop
OpenPOWER on IntegriCloud