Lines Matching defs:pa
57 iaddr_gen(struct mcamd_hdl *hdl, mcamd_node_t *mc, uint64_t pa,
60 uint64_t orig = pa;
84 if (pa < base || pa > lim) {
86 "in range [0x%llx, 0x%llx] of MC %d\n", pa, base, lim,
95 * and this pa to unum algorithm will simply see those modified
100 if (holesz != 0 && pa >= 0x100000000) {
101 pa -= holesz;
103 "valid; pa decremented from 0x%llx to 0x%llx for "
104 "a dramhole size of 0x%llx\n", orig, pa, holesz);
107 dramaddr = BITS(pa, 39, 0) - BITS(base, 39, 24);
118 if ((pailsel = BITS(pa, 14, 12) >> 12 & ilen) != ilsel) {
122 pa, (int)ilen + 1, pailsel, (int)mcnum, (int)ilsel);
140 "is 0x%llx\n", pa, base, lim, (int)mcnum, *iaddrp);
347 mc_whichdimm(struct mcamd_hdl *hdl, mcamd_node_t *cs, uint64_t pa,
392 pa, pa & 0x8 ? "upper" : "lower");
393 return (pa & 0x8 ? CSDIMM2 : CSDIMM1);
398 "a single DIMM\n", pa, valid_lo);
439 * Brute-force BKDG pa to cs translation, coded to look as much like the
443 mc_bkdg_patounum(struct mcamd_hdl *hdl, mcamd_node_t *mc, uint64_t pa,
460 uint32_t SystemAddr = (uint32_t)(pa >> 8);
496 SystemAddr, pa, DramBase, DramLimit, (int)mcnum);
580 if ((which = mc_whichdimm(hdl, cs, pa, valid_lo,
611 mc_patounum(struct mcamd_hdl *hdl, mcamd_node_t *mc, uint64_t pa,
627 bkdgres = mc_bkdg_patounum(hdl, mc, pa, valid_lo, synd,
632 if (iaddr_gen(hdl, mc, pa, &iaddr) < 0)
655 if ((which = mc_whichdimm(hdl, cs, pa, valid_lo, synd,
693 mcamd_patounum(struct mcamd_hdl *hdl, mcamd_node_t *root, uint64_t pa,
699 mcamd_dprintf(hdl, MCAMD_DBG_FLOW, "mcamd_patounum: pa=0x%llx, "
700 "synd=0x%x, syndtype=%d\n", pa, synd, syndtype);
704 "pa<%d> to be valid\n", MC_SYSADDR_MSB);
713 if (mc_patounum(hdl, mc, pa, valid_lo, synd,