Lines Matching refs:va

121 static status_t early_query(addr_t va, addr_t *out_physical);
122 static status_t get_physical_page_tmap_internal(addr_t pa, addr_t *va, uint32 flags);
123 static status_t put_physical_page_tmap_internal(addr_t va);
221 early_query(addr_t va, addr_t *_physicalAddress)
230 TRACE(("%s(%p,)\n", __FUNCTION__, va));
232 index = VADDR_TO_PRENT(va);
236 // pa == va when in TT
240 index = VADDR_TO_PDENT(va);
247 index = VADDR_TO_PTENT(va);
259 // we should only be passed page va, but just in case.
260 *_physicalAddress += va % B_PAGE_SIZE;
517 map_tmap(vm_translation_map *map, addr_t va, addr_t pa, uint32 attributes)
526 TRACE(("map_tmap: entry pa 0x%lx va 0x%lx\n", pa, va));
530 dprintf("index is %d\n", va / B_PAGE_SIZE / 1024);
531 dprintf("final at 0x%x\n", &pgdir[va / B_PAGE_SIZE / 1024]);
532 dprintf("value is 0x%x\n", *(int *)&pgdir[va / B_PAGE_SIZE / 1024]);
533 dprintf("present bit is %d\n", pgdir[va / B_PAGE_SIZE / 1024].present);
534 dprintf("addr is %d\n", pgdir[va / B_PAGE_SIZE / 1024].addr);
539 rindex = VADDR_TO_PRENT(va);
584 dindex = VADDR_TO_PDENT(va);
626 pindex = VADDR_TO_PTENT(va);
635 map->arch_data->pages_to_invalidate[map->arch_data->num_invalidate_pages] = va;
722 query_tmap_interrupt(vm_translation_map *map, addr_t va, addr_t *_physical,
736 index = VADDR_TO_PRENT(va);
742 index = VADDR_TO_PDENT(va);
748 index = VADDR_TO_PTENT(va);
759 // we should only be passed page va, but just in case.
760 *_physical += va % B_PAGE_SIZE;
778 query_tmap(vm_translation_map *map, addr_t va, addr_t *_physical, uint32 *_flags)
792 index = VADDR_TO_PRENT(va);
807 index = VADDR_TO_PDENT(va);
822 index = VADDR_TO_PTENT(va);
854 TRACE(("query_tmap: returning pa 0x%lx for va 0x%lx\n", *_physical, va));
948 clear_flags_tmap(vm_translation_map *map, addr_t va, uint32 flags)
959 index = VADDR_TO_PRENT(va);
974 index = VADDR_TO_PDENT(va);
989 index = VADDR_TO_PTENT(va);
1021 map->arch_data->pages_to_invalidate[map->arch_data->num_invalidate_pages] = va;
1064 map_iospace_chunk(addr_t va, addr_t pa, uint32 flags)
1071 va &= ~(B_PAGE_SIZE - 1); // make sure it's page aligned
1072 if (va < sIOSpaceBase || va >= (sIOSpaceBase + IOSPACE_SIZE))
1073 panic("map_iospace_chunk: passed invalid va 0x%lx\n", va);
1075 pt = &iospace_pgtables[(va - sIOSpaceBase) / B_PAGE_SIZE];
1090 arch_cpu_invalidate_TLB_range(va, va + (IOSPACE_CHUNK_SIZE - B_PAGE_SIZE));
1092 // va, va + (IOSPACE_CHUNK_SIZE - B_PAGE_SIZE), 0,
1101 get_physical_page_tmap_internal(addr_t pa, addr_t *va, uint32 flags)
1103 return generic_get_physical_page(pa, va, flags);
1108 put_physical_page_tmap_internal(addr_t va)
1110 return generic_put_physical_page(va);
1285 // we also still have transparent translation enabled, va==pa.
1403 // then the va for the page table for the query page.
1445 m68k_vm_translation_map_early_map(kernel_args *args, addr_t va, addr_t pa,
1454 TRACE(("early_tmap: entry pa 0x%lx va 0x%lx\n", pa, va));
1456 // everything much simpler here because pa = va
1459 index = VADDR_TO_PRENT(va);
1483 index = VADDR_TO_PDENT(va);
1506 index = VADDR_TO_PTENT(va);
1508 IS_KERNEL_ADDRESS(va));
1510 arch_cpu_invalidate_TLB_range(va, va);