FreeBSD/sys/arm/arm/pmap-v4.c
/*
 * pmap_link_l2pt:
 *
 *	Link the L2 page table specified by l2pv.pv_pa into the L1
 *	page table at the slot for "va".
 */
Link the L2 page table specified by l2pv.pv_pa into the L1
page table at the slot for "va".
Link the L2 page table specified by l2pv . pv_pa into the L1 page table at the slot for " va " .
void
pmap_link_l2pt(vm_offset_t l1pt, vm_offset_t va, struct pv_addr *l2pv)
{
	pd_entry_t *pde = (pd_entry_t *) l1pt, proto;
	u_int slot = va >> L1_S_SHIFT;
	proto = L1_S_DOM(PMAP_DOMAIN_KERNEL) | L1_C_PROTO;
#ifdef VERBOSE_INIT_ARM
	printf("pmap_link_l2pt: pa=0x%x va=0x%x\n", l2pv->pv_pa, l2pv->pv_va);
#endif
	pde[slot + 0] = proto | (l2pv->pv_pa + 0x000);
	PTE_SYNC(&pde[slot]);
	SLIST_INSERT_HEAD(&kernel_pt_list, l2pv, pv_list);
}
void pmap_link_l2pt ( vm_offset_t l1pt , vm_offset_t va , struct pv_addr * l2pv ) { pd_entry_t * pde = ( pd_entry_t * ) l1pt , proto ; u_int slot = va >> L1_S_SHIFT ; proto = L1_S_DOM ( PMAP_DOMAIN_KERNEL ) | L1_C_PROTO ; #ifdef VERBOSE_INIT_ARM printf ( " \n " , l2pv -> pv_pa , l2pv -> pv_va ) ; #endif pde [ slot + 0 ] = proto | ( l2pv -> pv_pa + 0x000 ) ; PTE_SYNC ( & pde [ slot ] ) ; SLIST_INSERT_HEAD ( & kernel_pt_list , l2pv , pv_list ) ; }
pmap_link_l2pt:
      Link the L2 page table specified by l2pv.pv_pa into the L1
      page table at the slot for "va".
pmap_link_l2pt : Link the L2 page table specified by l2pv . pv_pa into the L1 page table at the slot for " va " .