00001 #ifndef embhddef_h 00002 #define embhddef_h 00003 00004 #define EMB_K_HD_REV_V50 2 00005 #define EMB_K_HD_REV_V51 3 00006 #define EMB_K_HD_REV_HICKORY 4 00007 #define EMB_K_HD_REV_V10 5 00008 #define EMB_K_HD_REV_V20 6 00009 #define EMB_K_HD_REV_V30 7 00010 00011 #define EMB_C_HD_REV_V50 2 00012 #define EMB_C_HD_REV_V51 3 00013 #define EMB_C_HD_REV_HICKORY 4 00014 #define EMB_C_HD_REV_V10 5 00015 #define EMB_C_HD_REV_V20 6 00016 #define EMB_C_HD_REV_V30 7 00017 00018 #define EMB_C_OS_RESERVED 0 00019 #define EMB_C_OS_VAXVMS 1 00020 #define EMB_C_OS_VAXELN 2 00021 #define EMB_C_OS_ALPHAVMS 3 00022 00023 #define EMB_K_OS_RESERVED 0 00024 #define EMB_K_OS_VAXVMS 1 00025 #define EMB_K_OS_VAXELN 2 00026 #define EMB_K_OS_ALPHAVMS 3 00027 00028 typedef char SCS_NAME_LEN [16]; 00029 00030 #define EMB_C_SCS_NAME_LENGTH 16 00031 #define EMB_K_SCS_NAME_LENGTH 16 00032 #define EMB_K_HD_LENGTH 96 00033 #define EMB_C_HD_LENGTH 96 00034 00035 #define EMB_K_LENGTH 16 00036 #define EMB_S_EMBHDDEF 112 00037 00038 #define EMB_M_EM_BUS 0x1 00039 #define EMB_M_EM_CPU 0x2 00040 #define EMB_M_EM_MEMORY 0x4 00041 #define EMB_M_EM_ADAPTER 0x8 00042 #define EMB_M_EM_CACHE 0x10 00043 #define EMB_M_EM_VECTOR 0x20 00044 #define EMB_M_RSRVD1 0x40 00045 00046 #define EMB_M_FL_DDR 0x1 00047 #define EMB_M_FL_OVWRT 0x2 00048 00049 struct _embhd_nonfixed { 00050 unsigned int emb_l_hd_sid; 00051 unsigned short int emb_w_hd_hdr_rev; 00052 union { 00053 unsigned int emb_l_hd_systype; 00054 struct { 00055 unsigned short int emb_w_hd_xsid_rsv; 00056 unsigned char emb_b_hd_xsid_rev; 00057 unsigned char emb_b_hd_xsid_typ; 00058 }; 00059 }; 00060 unsigned int emb_l_cpuid; 00061 unsigned char emb_b_dev_class; 00062 unsigned char emb_b_dev_type; 00063 SCS_NAME_LEN emb_t_scs_name; 00064 unsigned short int emb_w_flags; 00065 unsigned char emb_b_os_id; 00066 unsigned char emb_b_hdrsz; 00067 union { 00068 unsigned short int emb_w_hd_entry; 00069 struct { 00070 unsigned char emb_b_devtyp; 00071 unsigned char emb_b_devcls; 00072 }; 00073 }; 00074 unsigned long long emb_q_hd_time; 00075 unsigned short int emb_w_hd_errseq; 00076 unsigned long long emb_q_hd_swvers; 00077 unsigned int emb_l_hd_errmsk; 00078 unsigned int emb_l_hd_abstim; 00079 unsigned char emb_b_hd_hw_name_len; 00080 char emb_t_hd_hw_name [31]; 00081 }; 00082 00083 struct _embhd { 00084 struct _embhd_nonfixed emb_r_embhd_nonfixed; 00085 }; 00086 00087 struct _embtrailer { 00088 int emb_l_tr_spare1; 00089 int emb_l_tr_spare2; 00090 int emb_l_tr_spare3; 00091 int emb_l_tr_actual_size; 00092 unsigned int emb_l_tr_active_cpus; 00093 unsigned int emb_l_tr_logging_cpu; 00094 unsigned long long emb_q_tr_tdf; 00095 }; 00096 00097 union _errmsk_fields { 00098 int emb_l_errmsk; 00099 struct { 00100 unsigned emb_v_em_bus : 1; 00101 unsigned emb_v_em_cpu : 1; 00102 unsigned emb_v_em_memory : 1; 00103 unsigned emb_v_em_adapter : 1; 00104 unsigned emb_v_em_cache : 1; 00105 unsigned emb_v_em_vector : 1; 00106 unsigned emb_v_rsrvd1 : 1; 00107 unsigned emb_v_rsrvd : 25; 00108 }; 00109 }; 00110 00111 union _flags_fields { 00112 int emb_l_flags; 00113 struct { 00114 unsigned emb_v_fl_ddr : 1; 00115 unsigned emb_v_fl_ovwrt : 1; 00116 unsigned emb_v_rsrvd : 14; 00117 }; 00118 }; 00119 00120 #endif 00121 00122