Lines Matching refs:bp

486 static int chmc_bank_match(struct chmc_bank_info *bp, unsigned long phys_addr)  in chmc_bank_match()  argument
492 if (bp->valid == 0) in chmc_bank_match()
496 upper_bits ^= bp->um; /* What bits are different? */ in chmc_bank_match()
498 upper_bits |= bp->uk; /* What bits don't matter for matching? */ in chmc_bank_match()
505 lower_bits ^= bp->lm; /* What bits are different? */ in chmc_bank_match()
507 lower_bits |= bp->lk; /* What bits don't matter for matching? */ in chmc_bank_match()
526 struct chmc_bank_info *bp; in chmc_find_bank() local
528 bp = &p->logical_banks[bank_no]; in chmc_find_bank()
529 if (chmc_bank_match(bp, phys_addr)) in chmc_find_bank()
530 return bp; in chmc_find_bank()
542 struct chmc_bank_info *bp; in chmc_print_dimm() local
546 bp = chmc_find_bank(phys_addr); in chmc_print_dimm()
547 if (bp == NULL || in chmc_print_dimm()
557 prop = &bp->p->layout_prop; in chmc_print_dimm()
558 bank_in_controller = bp->bank_id & (CHMCTRL_NBANKS - 1); in chmc_print_dimm()
631 struct chmc_bank_info *bp = &p->logical_banks[which_bank]; in chmc_interpret_one_decode_reg() local
633 bp->p = p; in chmc_interpret_one_decode_reg()
634 bp->bank_id = (CHMCTRL_NBANKS * p->portid) + which_bank; in chmc_interpret_one_decode_reg()
635 bp->raw_reg = val; in chmc_interpret_one_decode_reg()
636 bp->valid = (val & MEM_DECODE_VALID) >> MEM_DECODE_VALID_SHIFT; in chmc_interpret_one_decode_reg()
637 bp->uk = (val & MEM_DECODE_UK) >> MEM_DECODE_UK_SHIFT; in chmc_interpret_one_decode_reg()
638 bp->um = (val & MEM_DECODE_UM) >> MEM_DECODE_UM_SHIFT; in chmc_interpret_one_decode_reg()
639 bp->lk = (val & MEM_DECODE_LK) >> MEM_DECODE_LK_SHIFT; in chmc_interpret_one_decode_reg()
640 bp->lm = (val & MEM_DECODE_LM) >> MEM_DECODE_LM_SHIFT; in chmc_interpret_one_decode_reg()
642 bp->base = (bp->um); in chmc_interpret_one_decode_reg()
643 bp->base &= ~(bp->uk); in chmc_interpret_one_decode_reg()
644 bp->base <<= PA_UPPER_BITS_SHIFT; in chmc_interpret_one_decode_reg()
646 switch(bp->lk) { in chmc_interpret_one_decode_reg()
649 bp->interleave = 1; in chmc_interpret_one_decode_reg()
653 bp->interleave = 2; in chmc_interpret_one_decode_reg()
657 bp->interleave = 4; in chmc_interpret_one_decode_reg()
661 bp->interleave = 8; in chmc_interpret_one_decode_reg()
665 bp->interleave = 16; in chmc_interpret_one_decode_reg()
672 bp->size = (((unsigned long)bp->uk & in chmc_interpret_one_decode_reg()
674 bp->size /= bp->interleave; in chmc_interpret_one_decode_reg()