int cpm_dpfree(unsigned long offset) { int ret; unsigned long flags; spin_lock_irqsave(&cpm_dpmem_lock, flags); ret = rh_free(&cpm_dpmem_info, offset); spin_unlock_irqrestore(&cpm_dpmem_lock, flags); return ret; }
void bcom_sram_free(void *ptr) { unsigned long offset; if (!ptr) return; offset = ptr - bcom_sram->base_virt; spin_lock(&bcom_sram->lock); rh_free(bcom_sram->rh, offset); spin_unlock(&bcom_sram->lock); }
void starlet_ioh_kfree(void *ptr) { struct starlet_ioh *ioh = starlet_ioh_get(); unsigned long offset; unsigned long flags; if (!ioh || !ptr) return; offset = ptr - ioh->base; spin_lock_irqsave(&ioh->lock, flags); rh_free(ioh->rheap, offset); spin_unlock_irqrestore(&ioh->lock, flags); }