pmiidx 92 drivers/edac/pnd2_edac.c int (*pmi2mem)(struct mem_ctl_info *mci, u64 pmiaddr, u32 pmiidx, pmiidx 646 drivers/edac/pnd2_edac.c static int sys2pmi(const u64 addr, u32 *pmiidx, u64 *pmiaddr, char *msg) pmiidx 677 drivers/edac/pnd2_edac.c *pmiidx = asym0.slice0_asym_channel_select; pmiidx 682 drivers/edac/pnd2_edac.c ((chash.sym_slice0_channel_enabled >> (*pmiidx & 1)) & 1); pmiidx 685 drivers/edac/pnd2_edac.c *pmiidx = 2u + asym1.slice1_asym_channel_select; pmiidx 690 drivers/edac/pnd2_edac.c ((chash.sym_slice1_channel_enabled >> (*pmiidx & 1)) & 1); pmiidx 696 drivers/edac/pnd2_edac.c *pmiidx = (asym_2way.asym_2way_intlv_mode & 1) << 1; pmiidx 699 drivers/edac/pnd2_edac.c *pmiidx |= (u32)channel1; pmiidx 708 drivers/edac/pnd2_edac.c *pmiidx = 0u; pmiidx 721 drivers/edac/pnd2_edac.c *pmiidx = (u32)slice1 << 1; pmiidx 738 drivers/edac/pnd2_edac.c *pmiidx |= (u32)channel1; pmiidx 926 drivers/edac/pnd2_edac.c static int apl_pmi2mem(struct mem_ctl_info *mci, u64 pmiaddr, u32 pmiidx, pmiidx 929 drivers/edac/pnd2_edac.c struct d_cr_drp0 *cr_drp0 = &drp0[pmiidx]; pmiidx 931 drivers/edac/pnd2_edac.c int g = pvt->dimm_geom[pmiidx]; pmiidx 996 drivers/edac/pnd2_edac.c static int dnv_pmi2mem(struct mem_ctl_info *mci, u64 pmiaddr, u32 pmiidx, pmiidx 1000 drivers/edac/pnd2_edac.c daddr->rank = dnv_get_bit(pmiaddr, dmap[pmiidx].rs0 + 13, 0); pmiidx 1002 drivers/edac/pnd2_edac.c daddr->rank |= dnv_get_bit(pmiaddr, dmap[pmiidx].rs1 + 13, 1); pmiidx 1008 drivers/edac/pnd2_edac.c daddr->dimm = (daddr->rank >= 2) ^ drp[pmiidx].dimmflip; pmiidx 1010 drivers/edac/pnd2_edac.c daddr->bank = dnv_get_bit(pmiaddr, dmap[pmiidx].ba0 + 6, 0); pmiidx 1011 drivers/edac/pnd2_edac.c daddr->bank |= dnv_get_bit(pmiaddr, dmap[pmiidx].ba1 + 6, 1); pmiidx 1012 drivers/edac/pnd2_edac.c daddr->bank |= dnv_get_bit(pmiaddr, dmap[pmiidx].bg0 + 6, 2); pmiidx 1014 drivers/edac/pnd2_edac.c daddr->bank |= dnv_get_bit(pmiaddr, dmap[pmiidx].bg1 + 6, 3); pmiidx 1015 drivers/edac/pnd2_edac.c if (dmap1[pmiidx].bxor) { pmiidx 1017 drivers/edac/pnd2_edac.c daddr->bank ^= dnv_get_bit(pmiaddr, dmap3[pmiidx].row6 + 6, 0); pmiidx 1018 drivers/edac/pnd2_edac.c daddr->bank ^= dnv_get_bit(pmiaddr, dmap3[pmiidx].row7 + 6, 1); pmiidx 1021 drivers/edac/pnd2_edac.c daddr->bank ^= dnv_get_bit(pmiaddr, dmap5[pmiidx].ca3 + 6, 2); pmiidx 1024 drivers/edac/pnd2_edac.c daddr->bank ^= dnv_get_bit(pmiaddr, dmap5[pmiidx].ca4 + 6, 2); pmiidx 1025 drivers/edac/pnd2_edac.c daddr->bank ^= dnv_get_bit(pmiaddr, dmap2[pmiidx].row2 + 6, 3); pmiidx 1027 drivers/edac/pnd2_edac.c daddr->bank ^= dnv_get_bit(pmiaddr, dmap2[pmiidx].row2 + 6, 0); pmiidx 1028 drivers/edac/pnd2_edac.c daddr->bank ^= dnv_get_bit(pmiaddr, dmap3[pmiidx].row6 + 6, 1); pmiidx 1030 drivers/edac/pnd2_edac.c daddr->bank ^= dnv_get_bit(pmiaddr, dmap5[pmiidx].ca3 + 6, 2); pmiidx 1032 drivers/edac/pnd2_edac.c daddr->bank ^= dnv_get_bit(pmiaddr, dmap5[pmiidx].ca4 + 6, 2); pmiidx 1036 drivers/edac/pnd2_edac.c daddr->row = dnv_get_bit(pmiaddr, dmap2[pmiidx].row0 + 6, 0); pmiidx 1037 drivers/edac/pnd2_edac.c daddr->row |= dnv_get_bit(pmiaddr, dmap2[pmiidx].row1 + 6, 1); pmiidx 1038 drivers/edac/pnd2_edac.c daddr->row |= dnv_get_bit(pmiaddr, dmap2[pmiidx].row2 + 6, 2); pmiidx 1039 drivers/edac/pnd2_edac.c daddr->row |= dnv_get_bit(pmiaddr, dmap2[pmiidx].row3 + 6, 3); pmiidx 1040 drivers/edac/pnd2_edac.c daddr->row |= dnv_get_bit(pmiaddr, dmap2[pmiidx].row4 + 6, 4); pmiidx 1041 drivers/edac/pnd2_edac.c daddr->row |= dnv_get_bit(pmiaddr, dmap2[pmiidx].row5 + 6, 5); pmiidx 1042 drivers/edac/pnd2_edac.c daddr->row |= dnv_get_bit(pmiaddr, dmap3[pmiidx].row6 + 6, 6); pmiidx 1043 drivers/edac/pnd2_edac.c daddr->row |= dnv_get_bit(pmiaddr, dmap3[pmiidx].row7 + 6, 7); pmiidx 1044 drivers/edac/pnd2_edac.c daddr->row |= dnv_get_bit(pmiaddr, dmap3[pmiidx].row8 + 6, 8); pmiidx 1045 drivers/edac/pnd2_edac.c daddr->row |= dnv_get_bit(pmiaddr, dmap3[pmiidx].row9 + 6, 9); pmiidx 1046 drivers/edac/pnd2_edac.c daddr->row |= dnv_get_bit(pmiaddr, dmap3[pmiidx].row10 + 6, 10); pmiidx 1047 drivers/edac/pnd2_edac.c daddr->row |= dnv_get_bit(pmiaddr, dmap3[pmiidx].row11 + 6, 11); pmiidx 1048 drivers/edac/pnd2_edac.c daddr->row |= dnv_get_bit(pmiaddr, dmap4[pmiidx].row12 + 6, 12); pmiidx 1049 drivers/edac/pnd2_edac.c daddr->row |= dnv_get_bit(pmiaddr, dmap4[pmiidx].row13 + 6, 13); pmiidx 1050 drivers/edac/pnd2_edac.c if (dmap4[pmiidx].row14 != 31) pmiidx 1051 drivers/edac/pnd2_edac.c daddr->row |= dnv_get_bit(pmiaddr, dmap4[pmiidx].row14 + 6, 14); pmiidx 1052 drivers/edac/pnd2_edac.c if (dmap4[pmiidx].row15 != 31) pmiidx 1053 drivers/edac/pnd2_edac.c daddr->row |= dnv_get_bit(pmiaddr, dmap4[pmiidx].row15 + 6, 15); pmiidx 1054 drivers/edac/pnd2_edac.c if (dmap4[pmiidx].row16 != 31) pmiidx 1055 drivers/edac/pnd2_edac.c daddr->row |= dnv_get_bit(pmiaddr, dmap4[pmiidx].row16 + 6, 16); pmiidx 1056 drivers/edac/pnd2_edac.c if (dmap4[pmiidx].row17 != 31) pmiidx 1057 drivers/edac/pnd2_edac.c daddr->row |= dnv_get_bit(pmiaddr, dmap4[pmiidx].row17 + 6, 17); pmiidx 1059 drivers/edac/pnd2_edac.c daddr->col = dnv_get_bit(pmiaddr, dmap5[pmiidx].ca3 + 6, 3); pmiidx 1060 drivers/edac/pnd2_edac.c daddr->col |= dnv_get_bit(pmiaddr, dmap5[pmiidx].ca4 + 6, 4); pmiidx 1061 drivers/edac/pnd2_edac.c daddr->col |= dnv_get_bit(pmiaddr, dmap5[pmiidx].ca5 + 6, 5); pmiidx 1062 drivers/edac/pnd2_edac.c daddr->col |= dnv_get_bit(pmiaddr, dmap5[pmiidx].ca6 + 6, 6); pmiidx 1063 drivers/edac/pnd2_edac.c daddr->col |= dnv_get_bit(pmiaddr, dmap5[pmiidx].ca7 + 6, 7); pmiidx 1064 drivers/edac/pnd2_edac.c daddr->col |= dnv_get_bit(pmiaddr, dmap5[pmiidx].ca8 + 6, 8); pmiidx 1065 drivers/edac/pnd2_edac.c daddr->col |= dnv_get_bit(pmiaddr, dmap5[pmiidx].ca9 + 6, 9); pmiidx 1066 drivers/edac/pnd2_edac.c if (!dsch.ddr4en && dmap1[pmiidx].ca11 != 0x3f) pmiidx 1067 drivers/edac/pnd2_edac.c daddr->col |= dnv_get_bit(pmiaddr, dmap1[pmiidx].ca11 + 13, 11); pmiidx 1121 drivers/edac/pnd2_edac.c u32 pmiidx; pmiidx 1124 drivers/edac/pnd2_edac.c ret = sys2pmi(addr, &pmiidx, &pmiaddr, msg); pmiidx 1130 drivers/edac/pnd2_edac.c pmiidx >>= ops->pmiidx_shift; pmiidx 1131 drivers/edac/pnd2_edac.c daddr->chan = pmiidx; pmiidx 1133 drivers/edac/pnd2_edac.c ret = ops->pmi2mem(mci, pmiaddr, pmiidx, daddr, msg);