Lines Matching refs:pool_info

118 static int tavor_rsrc_mbox_alloc(tavor_rsrc_pool_info_t *pool_info,
120 static void tavor_rsrc_mbox_free(tavor_rsrc_pool_info_t *pool_info,
123 static int tavor_rsrc_hw_entry_alloc(tavor_rsrc_pool_info_t *pool_info,
126 static void tavor_rsrc_hw_entry_free(tavor_rsrc_pool_info_t *pool_info,
129 static int tavor_rsrc_swhdl_alloc(tavor_rsrc_pool_info_t *pool_info,
131 static void tavor_rsrc_swhdl_free(tavor_rsrc_pool_info_t *pool_info,
134 static int tavor_rsrc_pdhdl_alloc(tavor_rsrc_pool_info_t *pool_info,
136 static void tavor_rsrc_pdhdl_free(tavor_rsrc_pool_info_t *pool_info,
2231 tavor_rsrc_mbox_alloc(tavor_rsrc_pool_info_t *pool_info, uint_t num,
2243 ASSERT(pool_info != NULL);
2247 priv = pool_info->rsrc_private;
2267 if (pool_info->rsrc_loc == TAVOR_IN_DDR) {
2269 hdl->tr_len = (num * pool_info->rsrc_quantum);
2270 addr = vmem_alloc(pool_info->rsrc_vmp, hdl->tr_len,
2284 (uintptr_t)pool_info->rsrc_ddr_offset);
2286 (uintptr_t)pool_info->rsrc_start);
2291 temp_len = (num * pool_info->rsrc_quantum);
2317 tavor_rsrc_mbox_free(tavor_rsrc_pool_info_t *pool_info, tavor_rsrc_t *hdl)
2324 ASSERT(pool_info != NULL);
2328 if (pool_info->rsrc_loc == TAVOR_IN_DDR) {
2332 (uintptr_t)pool_info->rsrc_start);
2334 (uintptr_t)pool_info->rsrc_ddr_offset);
2337 vmem_free(pool_info->rsrc_vmp, addr, hdl->tr_len);
2357 tavor_rsrc_hw_entry_alloc(tavor_rsrc_pool_info_t *pool_info, uint_t num,
2368 ASSERT(pool_info != NULL);
2386 hdl->tr_len = (num * pool_info->rsrc_quantum);
2387 align = (num_align * pool_info->rsrc_quantum);
2388 addr = vmem_xalloc(pool_info->rsrc_vmp, hdl->tr_len,
2404 offset = ((uintptr_t)addr - (uintptr_t)pool_info->rsrc_ddr_offset);
2406 (uintptr_t)pool_info->rsrc_start);
2407 hdl->tr_indx = (offset >> pool_info->rsrc_shift);
2419 tavor_rsrc_hw_entry_free(tavor_rsrc_pool_info_t *pool_info, tavor_rsrc_t *hdl)
2426 ASSERT(pool_info != NULL);
2430 offset = ((uintptr_t)hdl->tr_addr - (uintptr_t)pool_info->rsrc_start);
2432 (uintptr_t)pool_info->rsrc_ddr_offset);
2435 vmem_xfree(pool_info->rsrc_vmp, addr, hdl->tr_len);
2446 tavor_rsrc_swhdl_alloc(tavor_rsrc_pool_info_t *pool_info, uint_t sleepflag,
2454 ASSERT(pool_info != NULL);
2459 addr = kmem_cache_alloc(pool_info->rsrc_private, flag);
2466 hdl->tr_len = pool_info->rsrc_quantum;
2479 tavor_rsrc_swhdl_free(tavor_rsrc_pool_info_t *pool_info, tavor_rsrc_t *hdl)
2483 ASSERT(pool_info != NULL);
2487 kmem_cache_free(pool_info->rsrc_private, hdl->tr_addr);
2498 tavor_rsrc_pdhdl_alloc(tavor_rsrc_pool_info_t *pool_info, uint_t sleepflag,
2507 ASSERT(pool_info != NULL);
2511 status = tavor_rsrc_swhdl_alloc(pool_info, sleepflag, hdl);
2522 tmpaddr = vmem_alloc(pool_info->rsrc_vmp, 1, flag);
2525 tavor_rsrc_swhdl_free(pool_info, hdl);
2545 tavor_rsrc_pdhdl_free(tavor_rsrc_pool_info_t *pool_info, tavor_rsrc_t *hdl)
2549 ASSERT(pool_info != NULL);
2553 vmem_free(pool_info->rsrc_vmp, (void *)(uintptr_t)hdl->tr_indx, 1);
2556 tavor_rsrc_swhdl_free(pool_info, hdl);