search for: nouveau_mem_free_block

Displaying 4 results from an estimated 4 matches for "nouveau_mem_free_block".

2008 Mar 09
0
[PATCH 3/4] nouveau: move nouveau_map_block() call to nouveau_addmap()
...k->map); + int err; + + err = drm_addmap(dev, block->start, block->size, type, 0, &block->map); + if (err) + return err; + + return nouveau_map_block(dev, block); } static int nouveau_addmap_pci(struct drm_device *dev, struct mem_block *block) @@ -646,11 +651,6 @@ alloc_ok: nouveau_mem_free_block(block); return NULL; } - - if (!nouveau_map_block(dev, block)) { - nouveau_mem_free_block(block); - return NULL; - } } DRM_DEBUG("allocated %lld bytes at 0x%llx type=0x%08x\n", block->size, block->start, block->flags);
2008 Mar 09
0
[PATCH 4/4] nouveau: clean up nouveau_mem_alloc function
...= nouveau_addmap_agp(dev, block); + break; + case NOUVEAU_MEM_FB: + err = nouveau_addmap_fb(dev, block); + break; + case NOUVEAU_MEM_PCI: + err = nouveau_addmap_pci(dev, block); + break; + default: + err = -EINVAL; + break; + }; + if (err) + goto error; + + return block; +error: + nouveau_mem_free_block(block); + return NULL; +} + +static struct mem_block * +nouveau_mem_alloc_pci(struct drm_device *dev, uint64_t size, int alignment, + int flags, struct drm_file *file_priv) +{ + struct drm_nouveau_private *dev_priv = dev->dev_private; + + return __nouveau_mem_alloc(dev, NOUVEAU_MEM_PCI, d...
2008 Mar 09
0
[PATCH 1/4] nouveau: add nouveau_addmap_{agp, fb, pci} functions
...DRM_FRAME_BUFFER, - 0, &block->map); + ret = nouveau_addmap_fb(dev, block); else if (type == NOUVEAU_MEM_PCI) - ret = drm_addmap(dev, block->start, block->size, - _DRM_SCATTER_GATHER, 0, &block->map); + ret = nouveau_addmap_pci(dev, block); if (ret) { nouveau_mem_free_block(block);
2008 Mar 09
0
[PATCH 2/4] nouveau: add nouveau_map_block function
...nt ret = 0; - block->flags|=NOUVEAU_MEM_MAPPED; if (type == NOUVEAU_MEM_AGP) ret = nouveau_addmap_agp(dev, block); @@ -635,12 +647,10 @@ alloc_ok: return NULL; } - entry = drm_find_matching_map(dev, block->map); - if (!entry) { + if (!nouveau_map_block(dev, block)) { nouveau_mem_free_block(block); return NULL; } - block->map_handle = entry->user_token; } DRM_DEBUG("allocated %lld bytes at 0x%llx type=0x%08x\n", block->size, block->start, block->flags);