Lines Matching refs:mtr

213 #define RANK_DISABLE(mtr)		GET_BITFIELD(mtr, 16, 19)
214 #define IS_DIMM_PRESENT(mtr) GET_BITFIELD(mtr, 14, 14)
215 #define RANK_CNT_BITS(mtr) GET_BITFIELD(mtr, 12, 13)
216 #define RANK_WIDTH_BITS(mtr) GET_BITFIELD(mtr, 2, 4)
217 #define COL_WIDTH_BITS(mtr) GET_BITFIELD(mtr, 0, 1)
331 enum dev_type (*get_width)(struct sbridge_pvt *pvt, u32 mtr);
697 static inline int numrank(enum type type, u32 mtr)
699 int ranks = (1 << RANK_CNT_BITS(mtr));
707 ranks, max, (unsigned int)RANK_CNT_BITS(mtr), mtr);
714 static inline int numrow(u32 mtr)
716 int rows = (RANK_WIDTH_BITS(mtr) + 12);
720 rows, (unsigned int)RANK_WIDTH_BITS(mtr), mtr);
727 static inline int numcol(u32 mtr)
729 int cols = (COL_WIDTH_BITS(mtr) + 10);
733 cols, (unsigned int)COL_WIDTH_BITS(mtr), mtr);
934 static enum dev_type knl_get_width(struct sbridge_pvt *pvt, u32 mtr)
940 static enum dev_type sbridge_get_width(struct sbridge_pvt *pvt, u32 mtr)
946 static enum dev_type __ibridge_get_width(u32 mtr)
950 switch (mtr) {
965 static enum dev_type ibridge_get_width(struct sbridge_pvt *pvt, u32 mtr)
971 return __ibridge_get_width(GET_BITFIELD(mtr, 7, 8));
974 static enum dev_type broadwell_get_width(struct sbridge_pvt *pvt, u32 mtr)
977 return __ibridge_get_width(GET_BITFIELD(mtr, 8, 9));
1612 u32 mtr, amap = 0;
1631 knl_mtr_reg, &mtr);
1634 mtr_regs[j], &mtr);
1636 edac_dbg(4, "Channel #%d MTR%d = %x\n", i, j, mtr);
1638 if (IS_DIMM_PRESENT(mtr)) {
1647 ranks = numrank(pvt->info.type, mtr);
1655 rows = numrow(mtr);
1656 cols = numcol(mtr);
1669 dimm->dtype = pvt->info.get_width(pvt, mtr);