src/ssx/occhw/occhw_async_gpe.c
// GPE FFDC collection
//
// \param async_request A GpeRequest upcast to an AsyncRequest
//
// This is an internal API, called from the async base code when an async
// request times out.
//
// GPE async error handling procedure:
//
// - Collect FFDC from the failing engine
//
// Currently all GPE errors are treated as recoverable
GPE FFDC collection
\param async_request A GpeRequest upcast to an AsyncRequest

This is an internal API, called from the async base code when an async
request times out.

GPE async error handling procedure.

Collect FFDC from the failing engine

Currently all GPE errors are treated as recoverable
GPE FFDC collection \ param async_request A GpeRequest upcast to an AsyncRequest This is an internal API called from the async base code when an async request times out . GPE async error handling procedure . Collect FFDC from the failing engine Currently all GPE errors are treated as recoverable
int
gpe_error_method(AsyncRequest* async_request)
{
    GpeQueue* queue = (GpeQueue*)(async_request->queue);
    GpeRequest* request = (GpeRequest*)async_request;
    request->ffdc.func_id = queue->ipc_cmd->cmd.func_id.word32;
    request->ffdc.ipc_rc = queue->ipc_cmd->cmd.ipc_rc;
    request->ffdc.xir_dump_rc =
        occhw_xir_dump(queue->ipc_target_id, &request->ffdc.xir_dump);
    return 0;
}
int gpe_error_method ( AsyncRequest * async_request ) { GpeQueue * queue = ( GpeQueue * ) ( async_request -> queue ) ; GpeRequest * request = ( GpeRequest * ) async_request ; request -> ffdc . func_id = queue -> ipc_cmd -> cmd . func_id . word32 ; request -> ffdc . ipc_rc = queue -> ipc_cmd -> cmd . ipc_rc ; request -> ffdc . xir_dump_rc = occhw_xir_dump ( queue -> ipc_target_id , & request -> ffdc . xir_dump ) ; return 0 ; }
GPE FFDC collection
\param async_request A GpeRequest upcast to an AsyncRequest
GPE FFDC collection \ param async_request A GpeRequest upcast to an AsyncRequest
// Collect data that could explain why a GPE command // couldn't be sent or timed out on the response and save it // in the ffdc fields //retrieve IPC data //retrieve XIR data