#ifndef _ZEN_UMC_TEST_H
#define _ZEN_UMC_TEST_H
#include "zen_umc.h"
#ifdef __cplusplus
extern "C" {
#endif
typedef struct umc_fabric_test {
const char *uft_desc;
const df_fabric_decomp_t *uft_decomp;
boolean_t uft_compose;
boolean_t uft_valid;
uint32_t uft_fabric_id;
uint32_t uft_sock_id;
uint32_t uft_die_id;
uint32_t uft_comp_id;
} umc_fabric_test_t;
typedef struct umc_decode_test {
const char *udt_desc;
const zen_umc_t *udt_umc;
uint64_t udt_pa;
boolean_t udt_pass;
zen_umc_decode_failure_t udt_fail;
uint64_t udt_norm_addr;
uint8_t udt_sock;
uint8_t udt_die;
uint8_t udt_comp;
uint32_t udt_dimm_no;
uint32_t udt_dimm_col;
uint32_t udt_dimm_row;
uint8_t udt_dimm_bank;
uint8_t udt_dimm_bank_group;
uint8_t udt_dimm_subchan;
uint8_t udt_dimm_rm;
uint8_t udt_dimm_cs;
} umc_decode_test_t;
extern const umc_fabric_test_t zen_umc_test_fabric_ids[];
extern const umc_decode_test_t zen_umc_test_basics[];
extern const umc_decode_test_t zen_umc_test_chans[];
extern const umc_decode_test_t zen_umc_test_cod[];
extern const umc_decode_test_t zen_umc_test_errors[];
extern const umc_decode_test_t zen_umc_test_hole[];
extern const umc_decode_test_t zen_umc_test_ilv[];
extern const umc_decode_test_t zen_umc_test_multi[];
extern const umc_decode_test_t zen_umc_test_nps[];
extern const umc_decode_test_t zen_umc_test_remap[];
extern const umc_decode_test_t zen_umc_test_nps_k[];
extern const umc_decode_test_t zen_umc_test_np2_k[];
#ifdef __cplusplus
}
#endif
#endif