Lines Matching defs:block
95 static void pool_check_block(struct dma_pool *pool, struct dma_block *block,
98 u8 *data = (void *)block;
105 pool->name, block);
117 memset(block, POOL_POISON_ALLOCATED, pool->size);
135 struct dma_block *block = pool->next_block;
145 while (block) {
146 if (block != vaddr) {
147 block = block->next_block;
164 static void pool_check_block(struct dma_pool *pool, struct dma_block *block,
183 struct dma_block *block = pool->next_block;
185 if (block) {
186 pool->next_block = block->next_block;
189 return block;
192 static void pool_block_push(struct dma_pool *pool, struct dma_block *block,
195 block->dma = dma;
196 block->next_block = pool->next_block;
197 pool->next_block = block;
303 struct dma_block *block, *first = NULL, *last = NULL;
313 block = page->vaddr + offset;
314 block->dma = page->dma + offset;
315 block->next_block = NULL;
318 last->next_block = block;
320 first = block;
321 last = block;
395 * dma_pool_alloc - get a block of consistent memory
396 * @pool: dma pool that will produce the block
398 * @handle: pointer to dma address of block
400 * Return: the kernel virtual address of a currently unused block,
402 * If such a memory block can't be allocated, %NULL is returned.
407 struct dma_block *block;
414 block = pool_block_pop(pool);
415 if (!block) {
428 block = pool_block_pop(pool);
432 *handle = block->dma;
433 pool_check_block(pool, block, mem_flags);
435 memset(block, 0, pool->size);
437 return block;
442 * dma_pool_free - put block back into dma pool
443 * @pool: the dma pool holding the block
444 * @vaddr: virtual address of block
445 * @dma: dma address of block
447 * Caller promises neither device nor driver will again touch this block
452 struct dma_block *block = vaddr;
457 pool_block_push(pool, block, dma);