Lines Matching defs:pa
184 struct phys_entry *pmap_find_physentry(ppnum_t pa)
190 if (pa < pmap_mem_regions[i].mrStart) continue; /* See if we fit in this region */
191 if (pa > pmap_mem_regions[i].mrEnd) continue; /* Check the end too */
193 entry = (unsigned int)pmap_mem_regions[i].mrPhysTab + ((pa - pmap_mem_regions[i].mrStart) * sizeof(phys_entry_t));
196 // kprintf("DEBUG - pmap_find_physentry: page 0x%08X not found\n", pa);
259 panic("pmap_map: attempt to map previously mapped range - va = %08X, pa = %08X, epa = %08X, collision = %016llX\n",
293 panic ("pmap_map_physical: mapping failure - va = %016llX, pa = %016llX, size = %016llX, collision = %016llX\n",
326 panic ("pmap_map_iohole: mapping failed - va = %016llX, pa = %016llX, size = %016llX, collision = %016llX\n",
840 vm_offset_t pa)
850 pp = mapping_phys_lookup(pa, &pindex); /* Get physical entry */
888 if ((pmap->pmapFlags & pmapVMhost) && !pmap_verify_free(pa))
889 panic("pmap_remove_some_phys: cruft left behind - pa = %08X, pmap = %p\n", pa, pmap);
945 ppnum_t pa,
967 pp = mapping_phys_lookup(pa, &pindex); /* Get physical entry */
990 if (!pmap_verify_free(pa))
991 panic("pmap_page_protect: cruft left behind - pa = %08X\n", pa);
1001 mapping_protect_phys(pa, (prot & VM_PROT_ALL) ); /* Change protection of all mappings to page. */
1015 ppnum_t pa)
1021 pp = mapping_phys_lookup(pa, &pindex); /* Get physical entry */
1042 if (!pmap_verify_free(pa))
1043 panic("pmap_disconnect: cruft left behind - pa = %08X\n", pa);
1046 return (mapping_tst_refmod(pa)); /* Return page ref and chg in generic format */
1101 pmap_enter(pmap_t pmap, vm_map_offset_t va, ppnum_t pa, vm_prot_t prot,
1120 colva = mapping_make(pmap, va, pa, mflags, 1, (prot & VM_PROT_ALL) ); /* Enter the mapping into the pmap */
1148 void pmap_map_block(pmap_t pmap, addr64_t va, ppnum_t pa, uint32_t size, vm_prot_t prot, int attr, unsigned int flags) { /* Map an autogenned block */
1158 // kprintf("pmap_map_block: (%08X) va = %016llX, pa = %08X, size = %08X, prot = %08X, attr = %08X, flags = %08X\n", /* (BRINGUP) */
1159 // current_thread(), va, pa, size, prot, attr, flags); /* (BRINGUP) */
1164 colva = mapping_make(pmap, va, pa, mflags, size, prot); /* Enter the mapping into the pmap */
1173 int pmap_map_block_rc(pmap_t pmap, addr64_t va, ppnum_t pa, uint32_t size, vm_prot_t prot, int attr, unsigned int flags) { /* Map an autogenned block */
1186 colva = mapping_make(pmap, va, pa, mflags, size, prot); /* Enter the mapping into the pmap */
1206 register vm_offset_t pa;
1229 pa = mp->mpPAddr + ppoffset; /* Remember ppage because mapping may vanish after drop call */
1234 if(pa > maxPPage32) return 0; /* Force large addresses to fail */
1236 pa = (pa << 12) | (va & 0xFFF); /* Convert physical page number to address */
1239 return pa; /* Return physical address or 0 */
1254 ppnum_t pa, ppoffset;
1269 pa = mp->mpPAddr + ppoffset; /* Get the actual physical address */
1274 return pa; /* Return physical address or 0 */
1329 * pmap_attribute_cache_sync(vm_offset_t pa)
1354 * pmap_sync_page_data_phys(ppnum_t pa)
1360 void pmap_sync_page_data_phys(ppnum_t pa) {
1365 sync_ppage(pa); /* Sync up dem caches */
1371 pmap_sync_page_attributes_phys(ppnum_t pa)
1373 pmap_sync_page_data_phys(pa);
1466 pmap_clear_modify(ppnum_t pa)
1469 mapping_clr_mod(pa); /* Clear all change bits for physical page */
1479 pmap_is_modified(register ppnum_t pa)
1481 return mapping_tst_mod(pa); /* Check for modified */
1492 pmap_clear_reference(ppnum_t pa)
1494 mapping_clr_ref(pa); /* Check for modified */
1503 pmap_is_referenced(ppnum_t pa)
1505 return mapping_tst_ref(pa); /* Check for referenced */
1514 pmap_get_refmod(ppnum_t pa)
1516 return (mapping_tst_refmod(pa));
1525 pmap_clear_refmod(ppnum_t pa, unsigned int mask)
1527 mapping_clr_refmod(pa, mask);
1531 * pmap_eligible_for_execute(ppnum_t pa)
1536 pmap_eligible_for_execute(ppnum_t pa)
1541 physent = mapping_phys_lookup(pa, &pindex); /* Get physical entry */
1593 boolean_t pmap_verify_free(ppnum_t pa) {
1598 pp = mapping_phys_lookup(pa, &pindex); /* Get physical entry */