/* IBM_PROLOG_BEGIN_TAG * This is an automatically generated prolog. * * $Source: src/usr/errl/errludcallout.C $ * * IBM CONFIDENTIAL * * COPYRIGHT International Business Machines Corp. 2012 * * p1 * * Object Code Only (OCO) source materials * Licensed Internal Code Source Materials * IBM HostBoot Licensed Internal Code * * The source code for this program is not published or other- * wise divested of its trade secrets, irrespective of what has * been deposited with the U.S. Copyright Office. * * Origin: 30 * * IBM_PROLOG_END_TAG */ /** * @file errludcallout.C * * @brief Implementation of ErrlUserDetailsCallout */ #include #include #include #include #include namespace ERRORLOG { extern TARGETING::TARG_TD_t g_trac_errl; //------------------------------------------------------------------------------ // Hardware callout ErrlUserDetailsCallout::ErrlUserDetailsCallout( const void *i_pTargetData, uint32_t i_targetDataLength, const HWAS::callOutPriority i_priority, const HWAS::DeconfigEnum i_deconfigState, const HWAS::GARD_ErrorType i_gardErrorType) { TRACDCOMP(g_trac_errl, "HWCallout entry"); // Set up ErrlUserDetails instance variables iv_CompId = HBERRL_COMP_ID; iv_Version = 1; iv_SubSection = HBERRL_UDT_CALLOUT; //iv_merge = false; // use the default of false uint32_t pDataLength = sizeof(HWAS::callout_ud_t) + i_targetDataLength; HWAS::callout_ud_t *pData; pData = reinterpret_cast (reallocUsrBuf(pDataLength)); pData->type = HWAS::HW_CALLOUT; pData->priority = i_priority; pData->cpuid = task_getcpuid(); pData->deconfigState = i_deconfigState; pData->gardErrorType = i_gardErrorType; memcpy(pData + 1, i_pTargetData, i_targetDataLength); TRACDCOMP(g_trac_errl, "HWCallout exit; pDataLength %d", pDataLength); } // Hardware callout //------------------------------------------------------------------------------ // Procedure callout ErrlUserDetailsCallout::ErrlUserDetailsCallout( const HWAS::epubProcedureID i_procedure, const HWAS::callOutPriority i_priority) { TRACDCOMP(g_trac_errl, "Procedure Callout"); // Set up ErrlUserDetails instance variables iv_CompId = HBERRL_COMP_ID; iv_Version = 1; iv_SubSection = HBERRL_UDT_CALLOUT; //iv_merge = false; // use the default of false HWAS::callout_ud_t *pData; pData = reinterpret_cast (reallocUsrBuf(sizeof(HWAS::callout_ud_t))); pData->type = HWAS::PROCEDURE_CALLOUT; pData->procedure = i_procedure; pData->priority = i_priority; TRACDCOMP(g_trac_errl, "Procedure Callout exit"); } // Procedure callout }