Lines Matching refs:nslabs
161 if (!io_tlb_default_mem.nslabs) in swiotlb_max_segment()
163 return rounddown(io_tlb_default_mem.nslabs << IO_TLB_SHIFT, PAGE_SIZE); in swiotlb_max_segment()
193 if (!mem->nslabs) { in swiotlb_print_info()
199 (mem->nslabs << IO_TLB_SHIFT) >> 20); in swiotlb_print_info()
252 if (!mem->nslabs || mem->late_alloc) in swiotlb_update_mem_attributes()
255 bytes = PAGE_ALIGN(mem->nslabs << IO_TLB_SHIFT); in swiotlb_update_mem_attributes()
264 unsigned long nslabs, unsigned int flags, in swiotlb_init_io_tlb_mem() argument
268 unsigned long bytes = nslabs << IO_TLB_SHIFT, i; in swiotlb_init_io_tlb_mem()
270 mem->nslabs = nslabs; in swiotlb_init_io_tlb_mem()
275 mem->area_nslabs = nslabs / mem->nareas; in swiotlb_init_io_tlb_mem()
285 for (i = 0; i < mem->nslabs; i++) { in swiotlb_init_io_tlb_mem()
308 int (*remap)(void *tlb, unsigned long nslabs)) in swiotlb_init_remap() argument
311 unsigned long nslabs; in swiotlb_init_remap() local
328 nslabs = default_nslabs; in swiotlb_init_remap()
335 bytes = PAGE_ALIGN(nslabs << IO_TLB_SHIFT); in swiotlb_init_remap()
345 if (remap && remap(tlb, nslabs) < 0) { in swiotlb_init_remap()
348 nslabs = ALIGN(nslabs >> 1, IO_TLB_SEGSIZE); in swiotlb_init_remap()
349 if (nslabs >= IO_TLB_MIN_SLABS) in swiotlb_init_remap()
356 alloc_size = PAGE_ALIGN(array_size(sizeof(*mem->slots), nslabs)); in swiotlb_init_remap()
371 swiotlb_init_io_tlb_mem(mem, __pa(tlb), nslabs, flags, false, in swiotlb_init_remap()
389 int (*remap)(void *tlb, unsigned long nslabs)) in swiotlb_init_late() argument
392 unsigned long nslabs = ALIGN(size >> IO_TLB_SHIFT, IO_TLB_SEGSIZE); in swiotlb_init_late() local
402 order = get_order(nslabs << IO_TLB_SHIFT); in swiotlb_init_late()
403 nslabs = SLABS_PER_PAGE << order; in swiotlb_init_late()
411 nslabs = SLABS_PER_PAGE << order; in swiotlb_init_late()
419 rc = remap(vstart, nslabs); in swiotlb_init_late()
423 nslabs = ALIGN(nslabs >> 1, IO_TLB_SEGSIZE); in swiotlb_init_late()
424 if (nslabs < IO_TLB_MIN_SLABS) in swiotlb_init_late()
446 get_order(array_size(sizeof(*mem->slots), nslabs))); in swiotlb_init_late()
451 (nslabs << IO_TLB_SHIFT) >> PAGE_SHIFT); in swiotlb_init_late()
452 swiotlb_init_io_tlb_mem(mem, virt_to_phys(vstart), nslabs, 0, true, in swiotlb_init_late()
475 if (!mem->nslabs) in swiotlb_exit()
481 slots_size = PAGE_ALIGN(array_size(sizeof(*mem->slots), mem->nslabs)); in swiotlb_exit()
737 if (!mem || !mem->nslabs) { in swiotlb_tbl_map_single()
758 alloc_size, mem->nslabs, mem_used(mem)); in swiotlb_tbl_map_single()
916 return mem && mem->nslabs; in is_swiotlb_active()
931 if (!mem->nslabs) in swiotlb_create_debugfs_files()
934 debugfs_create_ulong("io_tlb_nslabs", 0400, mem->debugfs, &mem->nslabs); in swiotlb_create_debugfs_files()
985 unsigned long nslabs = rmem->size >> IO_TLB_SHIFT; in rmem_swiotlb_device_init() local
1000 mem->slots = kcalloc(nslabs, sizeof(*mem->slots), GFP_KERNEL); in rmem_swiotlb_device_init()
1016 swiotlb_init_io_tlb_mem(mem, rmem->base, nslabs, SWIOTLB_FORCE, in rmem_swiotlb_device_init()