drm: omapdrm: Rename omap_gem_(get|put)_paddr() to omap_gem_(un)pin()
The reflects the purpose of the function better. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
This commit is contained in:
		
							parent
							
								
									16869083b9
								
							
						
					
					
						commit
						bc20c85cab
					
				| @ -188,8 +188,8 @@ int omap_gem_roll(struct drm_gem_object *obj, uint32_t roll); | ||||
| void omap_gem_cpu_sync(struct drm_gem_object *obj, int pgoff); | ||||
| void omap_gem_dma_sync(struct drm_gem_object *obj, | ||||
| 		enum dma_data_direction dir); | ||||
| int omap_gem_get_paddr(struct drm_gem_object *obj, dma_addr_t *dma_addr); | ||||
| void omap_gem_put_paddr(struct drm_gem_object *obj); | ||||
| int omap_gem_pin(struct drm_gem_object *obj, dma_addr_t *dma_addr); | ||||
| void omap_gem_unpin(struct drm_gem_object *obj); | ||||
| int omap_gem_get_pages(struct drm_gem_object *obj, struct page ***pages, | ||||
| 		bool remap); | ||||
| int omap_gem_put_pages(struct drm_gem_object *obj); | ||||
|  | ||||
| @ -259,7 +259,7 @@ int omap_framebuffer_pin(struct drm_framebuffer *fb) | ||||
| 
 | ||||
| 	for (i = 0; i < n; i++) { | ||||
| 		struct plane *plane = &omap_fb->planes[i]; | ||||
| 		ret = omap_gem_get_paddr(plane->bo, &plane->dma_addr); | ||||
| 		ret = omap_gem_pin(plane->bo, &plane->dma_addr); | ||||
| 		if (ret) | ||||
| 			goto fail; | ||||
| 		omap_gem_dma_sync(plane->bo, DMA_TO_DEVICE); | ||||
| @ -274,7 +274,7 @@ int omap_framebuffer_pin(struct drm_framebuffer *fb) | ||||
| fail: | ||||
| 	for (i--; i >= 0; i--) { | ||||
| 		struct plane *plane = &omap_fb->planes[i]; | ||||
| 		omap_gem_put_paddr(plane->bo); | ||||
| 		omap_gem_unpin(plane->bo); | ||||
| 		plane->dma_addr = 0; | ||||
| 	} | ||||
| 
 | ||||
| @ -300,7 +300,7 @@ void omap_framebuffer_unpin(struct drm_framebuffer *fb) | ||||
| 
 | ||||
| 	for (i = 0; i < n; i++) { | ||||
| 		struct plane *plane = &omap_fb->planes[i]; | ||||
| 		omap_gem_put_paddr(plane->bo); | ||||
| 		omap_gem_unpin(plane->bo); | ||||
| 		plane->dma_addr = 0; | ||||
| 	} | ||||
| 
 | ||||
|  | ||||
| @ -162,10 +162,9 @@ static int omap_fbdev_create(struct drm_fb_helper *helper, | ||||
| 	 * to it).  Then we just need to be sure that we are able to re- | ||||
| 	 * pin it in case of an opps. | ||||
| 	 */ | ||||
| 	ret = omap_gem_get_paddr(fbdev->bo, &dma_addr); | ||||
| 	ret = omap_gem_pin(fbdev->bo, &dma_addr); | ||||
| 	if (ret) { | ||||
| 		dev_err(dev->dev, | ||||
| 			"could not map (paddr)!  Skipping framebuffer alloc\n"); | ||||
| 		dev_err(dev->dev, "could not pin framebuffer\n"); | ||||
| 		ret = -ENOMEM; | ||||
| 		goto fail; | ||||
| 	} | ||||
| @ -303,8 +302,8 @@ void omap_fbdev_free(struct drm_device *dev) | ||||
| 
 | ||||
| 	fbdev = to_omap_fbdev(priv->fbdev); | ||||
| 
 | ||||
| 	/* release the ref taken in omap_fbdev_create() */ | ||||
| 	omap_gem_put_paddr(fbdev->bo); | ||||
| 	/* unpin the GEM object pinned in omap_fbdev_create() */ | ||||
| 	omap_gem_unpin(fbdev->bo); | ||||
| 
 | ||||
| 	/* this will free the backing object */ | ||||
| 	if (fbdev->fb) | ||||
|  | ||||
| @ -66,9 +66,9 @@ struct omap_gem_object { | ||||
| 	 * | ||||
| 	 * Buffers mapped to the TILER have their DMA address pointing to the | ||||
| 	 * TILER aperture. As TILER mappings are refcounted (through | ||||
| 	 * dma_addr_cnt) the DMA address must be accessed through | ||||
| 	 * omap_get_get_paddr() to ensure that the mapping won't disappear | ||||
| 	 * unexpectedly. References must be released with omap_gem_put_paddr(). | ||||
| 	 * dma_addr_cnt) the DMA address must be accessed through omap_gem_pin() | ||||
| 	 * to ensure that the mapping won't disappear unexpectedly. References | ||||
| 	 * must be released with omap_gem_unpin(). | ||||
| 	 */ | ||||
| 	dma_addr_t dma_addr; | ||||
| 
 | ||||
| @ -784,10 +784,21 @@ void omap_gem_dma_sync(struct drm_gem_object *obj, | ||||
| 	} | ||||
| } | ||||
| 
 | ||||
| /* Get physical address for DMA.. if the buffer is not already contiguous, remap
 | ||||
|  * it to pin in physically contiguous memory.. (ie. map in TILER) | ||||
| /**
 | ||||
|  * omap_gem_pin() - Pin a GEM object in memory | ||||
|  * @obj: the GEM object | ||||
|  * @dma_addr: the DMA address | ||||
|  * | ||||
|  * Pin the given GEM object in memory and fill the dma_addr pointer with the | ||||
|  * object's DMA address. If the buffer is not physically contiguous it will be | ||||
|  * remapped through the TILER to provide a contiguous view. | ||||
|  * | ||||
|  * Pins are reference-counted, calling this function multiple times is allowed | ||||
|  * as long the corresponding omap_gem_unpin() calls are balanced. | ||||
|  * | ||||
|  * Return 0 on success or a negative error code otherwise. | ||||
|  */ | ||||
| int omap_gem_get_paddr(struct drm_gem_object *obj, dma_addr_t *dma_addr) | ||||
| int omap_gem_pin(struct drm_gem_object *obj, dma_addr_t *dma_addr) | ||||
| { | ||||
| 	struct omap_drm_private *priv = obj->dev->dev_private; | ||||
| 	struct omap_gem_object *omap_obj = to_omap_bo(obj); | ||||
| @ -855,10 +866,15 @@ fail: | ||||
| 	return ret; | ||||
| } | ||||
| 
 | ||||
| /* Release physical address, when DMA is no longer being performed.. this
 | ||||
|  * could potentially unpin and unmap buffers from TILER | ||||
| /**
 | ||||
|  * omap_gem_unpin() - Unpin a GEM object from memory | ||||
|  * @obj: the GEM object | ||||
|  * | ||||
|  * Unpin the given GEM object previously pinned with omap_gem_pin(). Pins are | ||||
|  * reference-counted, the actualy unpin will only be performed when the number | ||||
|  * of calls to this function matches the number of calls to omap_gem_pin(). | ||||
|  */ | ||||
| void omap_gem_put_paddr(struct drm_gem_object *obj) | ||||
| void omap_gem_unpin(struct drm_gem_object *obj) | ||||
| { | ||||
| 	struct omap_gem_object *omap_obj = to_omap_bo(obj); | ||||
| 	int ret; | ||||
| @ -919,9 +935,9 @@ int omap_gem_tiled_stride(struct drm_gem_object *obj, uint32_t orient) | ||||
|  * increasing the pin count (which we don't really do yet anyways, | ||||
|  * because we don't support swapping pages back out).  And 'remap' | ||||
|  * might not be quite the right name, but I wanted to keep it working | ||||
|  * similarly to omap_gem_get_paddr().  Note though that mutex is not | ||||
|  * similarly to omap_gem_pin().  Note though that mutex is not | ||||
|  * aquired if !remap (because this can be called in atomic ctxt), | ||||
|  * but probably omap_gem_get_paddr() should be changed to work in the | ||||
|  * but probably omap_gem_unpin() should be changed to work in the | ||||
|  * same way.  If !remap, a matching omap_gem_put_pages() call is not | ||||
|  * required (and should not be made). | ||||
|  */ | ||||
|  | ||||
| @ -41,7 +41,7 @@ static struct sg_table *omap_gem_map_dma_buf( | ||||
| 	/* camera, etc, need physically contiguous.. but we need a
 | ||||
| 	 * better way to know this.. | ||||
| 	 */ | ||||
| 	ret = omap_gem_get_paddr(obj, &dma_addr); | ||||
| 	ret = omap_gem_pin(obj, &dma_addr); | ||||
| 	if (ret) | ||||
| 		goto out; | ||||
| 
 | ||||
| @ -54,7 +54,7 @@ static struct sg_table *omap_gem_map_dma_buf( | ||||
| 	sg_set_page(sg->sgl, pfn_to_page(PFN_DOWN(dma_addr)), obj->size, 0); | ||||
| 	sg_dma_address(sg->sgl) = dma_addr; | ||||
| 
 | ||||
| 	/* this should be after _get_paddr() to ensure we have pages attached */ | ||||
| 	/* this must be after omap_gem_pin() to ensure we have pages attached */ | ||||
| 	omap_gem_dma_sync(obj, dir); | ||||
| 
 | ||||
| 	return sg; | ||||
| @ -67,7 +67,7 @@ static void omap_gem_unmap_dma_buf(struct dma_buf_attachment *attachment, | ||||
| 		struct sg_table *sg, enum dma_data_direction dir) | ||||
| { | ||||
| 	struct drm_gem_object *obj = attachment->dmabuf->priv; | ||||
| 	omap_gem_put_paddr(obj); | ||||
| 	omap_gem_unpin(obj); | ||||
| 	sg_free_table(sg); | ||||
| 	kfree(sg); | ||||
| } | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user