Lines Matching refs:mmu

136 	struct cpuinfo_arc_mmu *mmu = &mmuinfo;  in local_flush_tlb_all()  local
139 int num_tlb = mmu->sets * mmu->ways; in local_flush_tlb_all()
571 struct cpuinfo_arc_mmu *mmu = &mmuinfo; in arc_mmu_mumbojumbo() local
579 mmu->ver = (bcr >> 24); in arc_mmu_mumbojumbo()
581 if (is_isa_arcompact() && mmu->ver == 3) { in arc_mmu_mumbojumbo()
583 mmu->pg_sz_k = 1 << (mmu3->pg_sz - 1); in arc_mmu_mumbojumbo()
584 mmu->sets = 1 << mmu3->sets; in arc_mmu_mumbojumbo()
585 mmu->ways = 1 << mmu3->ways; in arc_mmu_mumbojumbo()
591 mmu->pg_sz_k = 1 << (mmu4->sz0 - 1); in arc_mmu_mumbojumbo()
592 mmu->s_pg_sz_m = 1 << (mmu4->sz1 - 11); in arc_mmu_mumbojumbo()
593 mmu->sets = 64 << mmu4->n_entry; in arc_mmu_mumbojumbo()
594 mmu->ways = mmu4->n_ways * 2; in arc_mmu_mumbojumbo()
598 mmu->pae = mmu4->pae; in arc_mmu_mumbojumbo()
601 if (mmu->s_pg_sz_m) in arc_mmu_mumbojumbo()
603 mmu->s_pg_sz_m, in arc_mmu_mumbojumbo()
608 mmu->ver, mmu->pg_sz_k, super_pg, CONFIG_PGTABLE_LEVELS, in arc_mmu_mumbojumbo()
609 mmu->sets, mmu->ways, in arc_mmu_mumbojumbo()
612 IS_AVAIL2(mmu->pae, ", PAE40 ", CONFIG_ARC_HAS_PAE40)); in arc_mmu_mumbojumbo()
624 struct cpuinfo_arc_mmu *mmu = &mmuinfo; in arc_mmu_init() local
644 if (is_isa_arcompact() && mmu->ver == 3) in arc_mmu_init()
646 else if (is_isa_arcv2() && mmu->ver >= 4) in arc_mmu_init()
650 panic("MMU ver %d doesn't match kernel built for\n", mmu->ver); in arc_mmu_init()
652 if (mmu->pg_sz_k != TO_KB(PAGE_SIZE)) in arc_mmu_init()
656 mmu->s_pg_sz_m != TO_MB(HPAGE_PMD_SIZE)) in arc_mmu_init()
660 if (IS_ENABLED(CONFIG_ARC_HAS_PAE40) && !mmu->pae) in arc_mmu_init()
688 #define SET_WAY_TO_IDX(mmu, set, way) ((set) * mmu->ways + (way)) argument
703 struct cpuinfo_arc_mmu *mmu = &mmuinfo; in do_tlb_overlap_fault() local
705 int set, n_ways = mmu->ways; in do_tlb_overlap_fault()
708 BUG_ON(mmu->ways > 4); in do_tlb_overlap_fault()
713 for (set = 0; set < mmu->sets; set++) { in do_tlb_overlap_fault()
721 SET_WAY_TO_IDX(mmu, set, way)); in do_tlb_overlap_fault()
754 SET_WAY_TO_IDX(mmu, set, way)); in do_tlb_overlap_fault()