/* IBM_PROLOG_BEGIN_TAG */ /* This is an automatically generated prolog. */ /* */ /* bos720 src/bos/usr/include/diag/da.h 1.15 */ /* */ /* Licensed Materials - Property of IBM */ /* */ /* COPYRIGHT International Business Machines Corp. 1989,1993 */ /* All Rights Reserved */ /* */ /* US Government Users Restricted Rights - Use, duplication or */ /* disclosure restricted by GSA ADP Schedule Contract with IBM Corp. */ /* */ /* IBM_PROLOG_END_TAG */ /* @(#)21 1.15 src/bos/usr/include/diag/da.h, cmddiag, bos720 5/11/05 08:34:03 */ /* * COMPONENT_NAME: CMDDIAG * * FUNCTIONS: Diagnostic header file. * * ORIGINS: 27 * */ #ifndef _H_DA #define _H_DA #include #define MAXFRUS 4 #define FRUB1 4 #define FRUB2 5 #define FRUB_ENCLDA 6 #define NOT_IN_DB 0 #define DA_NAME 1 #define PARENT_NAME 2 #define CHILD_NAME 3 #define NO_FRU_LOCATION 4 /* Return codes from diagex routines */ #define CHILD_UNCONFIGURE_ERROR 1 /* Child cannot be unconfigured */ #define DEVICE_UNCONFIGURE_ERROR 2 /* Device cannot be unconfigured */ #define DEVICE_DIAGNOSE_ERROR 3 /* Device cannot be put in */ /* diagnose state. */ #define DEVICE_DEFINE_ERROR 4 /* Device cannot be put in */ /* define state. */ #define DEVICE_CONFIGURE_ERROR 5 /* Device cannot be configured */ #define CHILD_CONFIGURE_ERROR 6 /* Child cannot be configured */ #define DEVICE_ALREADY_IN_DIAGNOSE 7 /* Already in DIAGNOSE state. */ /* Constants defined in RPA Event/Error Log */ /* NN indicates the RPA definition is "not Null separated", */ /* so the defined constant is one more than the RPA definition. */ #define RPA_SRC_SIZE_NN 33 #define RPA_LOC_SIZE 80 #define RPA_FRU_PN_SIZE 8 #define RPA_FRU_SN_SIZE_NN 13 #define RPA_PROC_SIZE 8 #define RPA_CCIN_SIZE_NN 5 #define RPA_DUMP_FN_SIZE 40 #define RPA_FRUTYPE_NORMAL 1 #define RPA_FRUTYPE_CODE 2 #define RPA_FRUTYPE_C_PROC 3 #define RPA_FRUTYPE_M_PROC 4 #define RPA_FRUTYPE_EXT 9 #define RPA_FRUTYPE_EXT_CODE 10 #define RPA_FRUTYPE_TOOL 11 #define RPA_FRUTYPE_SYMBOL 12 #define RPA_MT_MTM_SIZE 8 #define RPA_MT_SN_SIZE 12 /* Action flags defined by RPA Version 6 */ #define RPA_SERVICE_ACTION 0x8000 #define RPA_HIDDEN_ERROR 0x4000 #define RPA_REPORT_EXTERNALLY 0x2000 #define RPA_NOT_HYPERVISOR 0x1000 #define RPA_CALL_HOME_REQD 0x0800 #define RPA_ISOLATION_INCOMPLETE 0x0400 /* Diagnostics overload of Action flag bits for errors reported to the */ /* controller in the fru_bucket_src and frus_src structures. The */ /* flags are only valid when fru_bucket_src.plid == 0, which indicates */ /* the error data is not from a RPA Version 6 Platform Event/Error. */ #define NO_FAULT_INDICATOR 0x0080 /* do not turn on the fault */ /* indicator for this fru_bucket_src */ #define EXEMPT 3 #define NONEXEMPT 4 #ifndef NULL #define NULL 0 #endif #ifndef TRUE #define TRUE 1 #endif #ifndef _RPA_DEF_ONLY /* do not include in diagodm.cre */ typedef struct { int conf; /* probability of failure */ char fname[NAMESIZE]; /* FRU name */ char floc[LOCSIZE]; /* location of fname */ short fmsg; /* text message number for fname*/ char fru_flag; /* flag used by DA */ char fru_exempt; }fru_t; struct fru_bucket { char dname[NAMESIZE]; /* device name */ short ftype; /* FRU bucket type added to the system */ short sn; /* Source number of the failure */ short rcode; /* reason code for the failure */ short rmsg; /* Failure description */ fru_t frus[MAXFRUS]; }; typedef struct frus_src { int type; /* RPA FRU type */ char priority[2]; /* RPA FRU/Procedure Priority */ char loc[RPA_LOC_SIZE]; /* Physical location code */ char pn[RPA_FRU_PN_SIZE]; /* FRU Part Number, if available */ char proc_id[RPA_PROC_SIZE]; /* Procedure Id, if available */ char ccin[RPA_CCIN_SIZE_NN]; /* CCIN, if available */ char sn[RPA_FRU_SN_SIZE_NN]; /* FRU Serial Number, if available */ struct frus_src *next_fru; } frus_src_t; struct fru_bucket_src { char dname[NAMESIZE];/* Resource Name */ char src[RPA_SRC_SIZE_NN];/* SRC - Primary reference code */ unsigned int refc2; /* Extended reference code - word 2 */ unsigned int refc3; /* Extended reference code - word 3 */ unsigned int refc4; /* Extended reference code - word 4 */ unsigned int refc5; /* Extended reference code - word 5 */ unsigned int refc6; /* Extended reference code - word 6 */ unsigned int refc7; /* Extended reference code - word 7 */ unsigned int refc8; /* Extended reference code - word 8 */ unsigned int refc9; /* Extended reference code - word 9 */ int rmsg; /* Failure description */ char crid[2]; /* Platform error creator id */ unsigned int plid; /* Platform Log Id */ unsigned int subsysid; /* Subsystem Id */ unsigned int event_sev; /* Event Severity */ int action_flags; /* Error Action Flags */ int errlg_seq; /* Error Log Sequence Number */ frus_src_t *frus; }; #endif /* ! _RPA_DEF_ONLY */ #endif