void core_mmu_set_entry(struct core_mmu_table_info *tbl_info, unsigned idx, paddr_t pa, uint32_t attr) { uint64_t *table = tbl_info->table; uint64_t desc = mattr_to_desc(tbl_info->level, attr); assert(idx < tbl_info->num_entries); table[idx] = desc | pa; }
static uint64_t mmap_desc(uint32_t attr, uint64_t addr_pa, unsigned level) { return mattr_to_desc(level, attr) | addr_pa; }