Lines Matching refs:full
72 static int get_physical_address(CPUSPARCState *env, CPUTLBEntryFull *full, in get_physical_address() argument
87 full->lg_page_size = TARGET_PAGE_BITS; in get_physical_address()
90 full->phys_addr = env->prom_addr | (address & 0x7ffffULL); in get_physical_address()
91 full->prot = PAGE_READ | PAGE_EXEC; in get_physical_address()
94 full->phys_addr = address; in get_physical_address()
95 full->prot = PAGE_READ | PAGE_WRITE | PAGE_EXEC; in get_physical_address()
100 full->phys_addr = 0xffffffffffff0000ULL; in get_physical_address()
164 full->lg_page_size = TARGET_PAGE_BITS; in get_physical_address()
168 full->lg_page_size = 18; in get_physical_address()
173 full->lg_page_size = 24; in get_physical_address()
196 full->prot = perm_table[is_user][access_perms]; in get_physical_address()
200 full->prot &= ~PAGE_WRITE; in get_physical_address()
205 full->phys_addr = ((hwaddr)(pde & PTE_ADDR_MASK) << 4) + page_offset; in get_physical_address()
215 CPUTLBEntryFull full = {}; in sparc_cpu_tlb_fill() local
228 error_code = get_physical_address(env, &full, &access_index, in sparc_cpu_tlb_fill()
235 address, full.phys_addr, vaddr); in sparc_cpu_tlb_fill()
236 tlb_set_page_full(cs, mmu_idx, vaddr, &full); in sparc_cpu_tlb_fill()
251 full.prot = PAGE_READ | PAGE_WRITE | PAGE_EXEC; in sparc_cpu_tlb_fill()
252 tlb_set_page_full(cs, mmu_idx, vaddr, &full); in sparc_cpu_tlb_fill()
548 static int get_physical_address_data(CPUSPARCState *env, CPUTLBEntryFull *full, in get_physical_address_data() argument
582 &full->phys_addr)) { in get_physical_address_data()
586 full->tlb_fill_flags |= TLB_BSWAP; in get_physical_address_data()
619 full->prot = PAGE_READ; in get_physical_address_data()
621 full->prot |= PAGE_WRITE; in get_physical_address_data()
648 static int get_physical_address_code(CPUSPARCState *env, CPUTLBEntryFull *full, in get_physical_address_code() argument
683 address, context, &full->phys_addr)) { in get_physical_address_code()
710 full->prot = PAGE_EXEC; in get_physical_address_code()
724 static int get_physical_address(CPUSPARCState *env, CPUTLBEntryFull *full, in get_physical_address() argument
730 full->lg_page_size = TARGET_PAGE_BITS; in get_physical_address()
748 full->phys_addr = ultrasparc_truncate_physical(address); in get_physical_address()
749 full->prot = PAGE_READ | PAGE_WRITE | PAGE_EXEC; in get_physical_address()
754 return get_physical_address_code(env, full, address, mmu_idx); in get_physical_address()
756 return get_physical_address_data(env, full, address, rw, mmu_idx); in get_physical_address()
766 CPUTLBEntryFull full = {}; in sparc_cpu_tlb_fill() local
770 error_code = get_physical_address(env, &full, &access_index, in sparc_cpu_tlb_fill()
773 trace_mmu_helper_mmu_fault(address, full.phys_addr, mmu_idx, env->tl, in sparc_cpu_tlb_fill()
776 tlb_set_page_full(cs, mmu_idx, address, &full); in sparc_cpu_tlb_fill()
878 CPUTLBEntryFull full = {}; in cpu_sparc_get_phys_page() local
881 ret = get_physical_address(env, &full, &access_index, addr, rw, mmu_idx); in cpu_sparc_get_phys_page()
883 *phys = full.phys_addr; in cpu_sparc_get_phys_page()