imc_t
imc_t *imc;
const imc_t *imc = arg;
imc_decode_sad(const imc_t *imc, imc_decode_state_t *dec)
imc_decode_tad_channel(const imc_t *imc, imc_decode_state_t *dec)
imc_decode_tad(const imc_t *imc, imc_decode_state_t *dec)
imc_decode_rir(const imc_t *imc, imc_decode_state_t *dec)
imc_decode_pa(const imc_t *imc, uint64_t pa, imc_decode_state_t *dec)
imc_decode_addr_resvd(const imc_t *imc, imc_decode_state_t *dec)
imc_dump_decoder(imc_t *imc)
imc_restore_decoder(nvlist_t *nvl, imc_t *imc)
bzero(imc, sizeof (imc_t));
const imc_t *itc_imc;
static const imc_t imc_badaddr = {
static const imc_t imc_basic_snb = {
static const imc_t imc_riroff_underflow = {
static const imc_t imc_invalid_sad = {
static const imc_t imc_invalid_sad_rule = {
static const imc_t imc_invalid_sad_interleave = {
static const imc_t imc_invalid_sad_target = {
static const imc_t imc_bad_tad_rule = {
static const imc_t imc_badsock = {
static const imc_t imc_bad_tad_3way = {
static const imc_t imc_bad_tad_target = {
static const imc_t imc_bad_tad_channelid = {
static const imc_t imc_bad_channel_offset = {
static const imc_t imc_bad_rir_rule = {
static const imc_t imc_bad_rir_ileave = {
static const imc_t imc_bad_dimm_index = {
static const imc_t imc_missing_dimm = {
static const imc_t imc_bad_rank_index = {
static const imc_t imc_chanoff_underflow = {
static const imc_t imc_rir_4w_4r_open = {
static const imc_t imc_rir_8w_4r_2dpc = {
static const imc_t imc_rir_2w_1r_3dpc = {
static const imc_t imc_rir_8w_4r_closed = {
static const imc_t imc_sad_2s_a7_xor = {
static const imc_t imc_sad_2s_multirule = {
static const imc_t imc_sad_2s_skx_10t8 = {
static const imc_t imc_sad_1s_skx_14t12 = {
static const imc_t imc_sad_4s_8w_skx_32t30 = {
static const imc_t imc_sad_4s_basic = {
static const imc_t imc_sad_2s_basic = {
static const imc_t imc_sad_2s_xor = {
static const imc_t imc_sad_2s_a7 = {
static const imc_t imc_sad_4s_a7 = {
static const imc_t imc_skx_loop_badsock = {
static const imc_t imc_skx_loop_2s = {
static const imc_t imc_skx_loop_self = {
static const imc_t imc_skx_4k_gran = {
static const imc_t imc_skx_1g_gran = {
static const imc_t imc_tad_1s_4cw = {
static const imc_t imc_tad_1s_2cw_shiftup = {
static const imc_t imc_tad_skx_mod3_45t6 = {
static const imc_t imc_tad_skx_mod3_45t8 = {
static const imc_t imc_tad_skx_mod3_45t12 = {
static const imc_t imc_tad_skx_mod2_01_45t12 = {
static const imc_t imc_tad_skx_mod2_12_45t12 = {
static const imc_t imc_tad_1s_2cw_chanhash = {
static const imc_t imc_tad_skx_mod2_02_45t12 = {
static const imc_t imc_tad_1s_multirule = {
static const imc_t imc_tad_1s_2cw = {
static const imc_t imc_tad_2s_2cw_4sw = {
static const imc_t imc_skx_64b_gran = {
static const imc_t imc_skx_256b_gran = {
imc_decode_mtr(imc_t *imc, imc_mc_t *icn, imc_dimm_t *dimm, uint32_t mtr)
imc_fill_dimms(imc_t *imc, imc_mc_t *icn, imc_channel_t *chan)
imc_fill_controller(imc_t *imc, imc_mc_t *icn)
imc_fill_data(imc_t *imc)
imc_nvl_create_dimm(imc_t *imc, imc_dimm_t *dimm)
imc_nvl_create_channel(imc_t *imc, imc_channel_t *chan)
imc_nvl_create_mc(imc_t *imc, imc_mc_t *icn)
imc_decoder_pack(imc_t *imc)
imc_nvl_create(imc_t *imc)
imc_sad_read_tohm(imc_t *imc, imc_sad_t *sad)
imc_sad_fill_rule(imc_t *imc, imc_sad_t *sad, imc_sad_rule_t *rule,
imc_sad_fill_rule_interleave(imc_t *imc, imc_sad_rule_t *rule, uint32_t raw)
imc_sad_read_dram_rules(imc_t *imc, imc_sad_t *sad)
imc_sad_decode_mcroute(imc_t *imc, imc_sad_t *sad)
imc_decoder_init_sad(imc_t *imc)
imc_tad_fill_rule(imc_t *imc, imc_tad_t *tad, imc_tad_rule_t *prev,
imc_tad_fill_skx(imc_t *imc, imc_tad_t *tad, imc_tad_rule_t *rule,
imc_tad_read_rules(imc_t *imc, imc_tad_t *tad)
imc_tad_read_features(imc_t *imc, imc_tad_t *tad, imc_mc_t *mc)
imc_tad_read_interleave(imc_t *imc, imc_channel_t *chan)
imc_decoder_init_tad(imc_t *imc)
imc_rir_read_ileave_offsets(imc_t *imc, imc_channel_t *chan,
imc_rir_read_wayness(imc_t *imc, imc_channel_t *chan)
imc_decoder_init_rir(imc_t *imc)
imc_t *imc = arg;
imc_t *imc = arg;
imc_t *imc = arg;
imc_t *imc = arg;
imc_t *imc = imc_data;
imc_t *imc = imc_data;
imc_t *imc = imc_data;
imc_ioctl_decode(imc_t *imc, mc_encode_ioc_t *encode)
imc_t *imc = imc_data;
kmem_free(imc_data, sizeof (imc_t));
imc_data = kmem_zalloc(sizeof (imc_t), KM_SLEEP);
static imc_t *imc_data = NULL;
imc_set_gen_data(imc_t *imc)
imc_create_minors(imc_t *imc)
imc_mcroute_check(imc_t *imc, imc_sad_t *sad, imc_stub_t *stub)
imc_map_buses(imc_t *imc)
imc_map_find_socket(imc_t *imc, imc_stub_t *stub)
imc_map_stubs(imc_t *imc)
imc_fixup_stubs(imc_t *imc)
imc_validate_stubs(imc_t *imc)
imc_map_sockets(imc_t *imc)
extern void imc_decoder_init(imc_t *);
extern nvlist_t *imc_dump_decoder(imc_t *);
extern boolean_t imc_restore_decoder(nvlist_t *, imc_t *);
extern boolean_t imc_decode_pa(const imc_t *, uint64_t, imc_decode_state_t *);