Lines Matching refs:slots

286 		mem->slots[i].list = IO_TLB_SEGSIZE - io_tlb_offset(i);  in swiotlb_init_io_tlb_pool()
287 mem->slots[i].orig_addr = INVALID_PHYS_ADDR; in swiotlb_init_io_tlb_pool()
288 mem->slots[i].alloc_size = 0; in swiotlb_init_io_tlb_pool()
393 alloc_size = PAGE_ALIGN(array_size(sizeof(*mem->slots), nslabs)); in swiotlb_init_remap()
394 mem->slots = memblock_alloc(alloc_size, PAGE_SIZE); in swiotlb_init_remap()
395 if (!mem->slots) { in swiotlb_init_remap()
499 mem->slots = (void *)__get_free_pages(GFP_KERNEL | __GFP_ZERO, in swiotlb_init_late()
500 get_order(array_size(sizeof(*mem->slots), nslabs))); in swiotlb_init_late()
501 if (!mem->slots) in swiotlb_init_late()
536 slots_size = PAGE_ALIGN(array_size(sizeof(*mem->slots), mem->nslabs)); in swiotlb_exit()
544 free_pages((unsigned long)mem->slots, get_order(slots_size)); in swiotlb_exit()
549 memblock_free_late(__pa(mem->slots), slots_size); in swiotlb_exit()
701 slot_order = get_order(array_size(sizeof(*pool->slots), nslabs)); in swiotlb_alloc_pool()
702 pool->slots = (struct io_tlb_slot *) in swiotlb_alloc_pool()
704 if (!pool->slots) in swiotlb_alloc_pool()
745 size_t slots_size = array_size(sizeof(*pool->slots), pool->nslabs); in swiotlb_dyn_free()
748 free_pages((unsigned long)pool->slots, get_order(slots_size)); in swiotlb_dyn_free()
832 phys_addr_t orig_addr = mem->slots[index].orig_addr; in swiotlb_bounce()
833 size_t alloc_size = mem->slots[index].alloc_size; in swiotlb_bounce()
1023 if (pool->slots[slot_index].list >= nslots) in swiotlb_area_find_slots()
1041 pool->slots[i].list = 0; in swiotlb_area_find_slots()
1042 pool->slots[i].alloc_size = alloc_size - (offset + in swiotlb_area_find_slots()
1047 pool->slots[i].list; i--) in swiotlb_area_find_slots()
1048 pool->slots[i].list = ++count; in swiotlb_area_find_slots()
1301 pool->slots[index + i].orig_addr = slot_addr(orig_addr, i); in swiotlb_tbl_map_single()
1320 int nslots = nr_slots(mem->slots[index].alloc_size + offset); in swiotlb_release_slots()
1335 count = mem->slots[index + nslots].list; in swiotlb_release_slots()
1344 mem->slots[i].list = ++count; in swiotlb_release_slots()
1345 mem->slots[i].orig_addr = INVALID_PHYS_ADDR; in swiotlb_release_slots()
1346 mem->slots[i].alloc_size = 0; in swiotlb_release_slots()
1354 io_tlb_offset(i) != IO_TLB_SEGSIZE - 1 && mem->slots[i].list; in swiotlb_release_slots()
1356 mem->slots[i].list = ++count; in swiotlb_release_slots()
1654 pool->slots = kcalloc(nslabs, sizeof(*pool->slots), GFP_KERNEL); in rmem_swiotlb_device_init()
1655 if (!pool->slots) { in rmem_swiotlb_device_init()
1663 kfree(pool->slots); in rmem_swiotlb_device_init()