Lines Matching refs:ms_page
183 struct ms_mem_page *ms_page; in ms_mem_pool_alloc() local
194 …ms_page = (struct ms_mem_page *)( (char *)__mptr - (char *)offsetof(struct ms_mem_page,page_list)); in ms_mem_pool_alloc()
199 if (ms_page->bitmap [iMap] == 0) in ms_mem_pool_alloc()
201 iBlock = ms_find_1st_zero (~ ms_page->bitmap [iMap]); in ms_mem_pool_alloc()
204 ms_clear_bit ( iBlock, &ms_page->bitmap [iMap],U32); in ms_mem_pool_alloc()
212 if (!(ms_page = pool_alloc_page (pMem_pool, iFlags))) in ms_mem_pool_alloc()
219 ms_clear_bit (0, &ms_page->bitmap [0],U32); in ms_mem_pool_alloc()
222 ms_retval = (void*) (u32Offset + (size_t) ( ms_page->vaddr )); in ms_mem_pool_alloc()
223 *pDma_addr = u32Offset + ms_page->dma; in ms_mem_pool_alloc()
256 struct ms_mem_page *ms_page; in ms_mem_pool_destroy() local
259 …ms_page = (struct ms_mem_page *)( (char *)__mptr - (char *)offsetof(struct ms_mem_page,page_list) … in ms_mem_pool_destroy()
261 if (__is_page_busy (pMem_pool->blocks_per_page, ms_page->bitmap)) in ms_mem_pool_destroy()
264 pMem_pool->name, ms_page->vaddr); in ms_mem_pool_destroy()
266 ms_list_remove (&ms_page->page_list); in ms_mem_pool_destroy()
267 kfree (ms_page); in ms_mem_pool_destroy()
271 ncmem_free_page((U32)ms_page->vaddr); in ms_mem_pool_destroy()
272 ms_list_remove (&ms_page->page_list); in ms_mem_pool_destroy()
273 kfree (ms_page); in ms_mem_pool_destroy()
294 struct ms_mem_page *ms_page; in ms_mem_pool_free() local
305 …ms_page = (struct ms_mem_page *)( (char *)__mptr - (char *)offsetof(struct ms_mem_page,page_list) … in ms_mem_pool_free()
307 if (dma_addr < ms_page->dma) in ms_mem_pool_free()
309 if (dma_addr < (ms_page->dma + pMem_pool->allocation)) in ms_mem_pool_free()
322 iBlock = dma_addr - ms_page->dma; in ms_mem_pool_free()
328 ms_set_bit (iBlock, &ms_page->bitmap [iMap], U32); in ms_mem_pool_free()
329 … ms_usbhost_debug("Free Block: addr=0x%08X bitmap is 0x%08X",dma_addr,(U32)ms_page->bitmap [iMap]); in ms_mem_pool_free()