Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit a266162a authored by Daniel Vetter's avatar Daniel Vetter
Browse files

drm: Move dma functions into drm_legacy.h



Also drop the unneeded EXPORT_SYMBOL and sprinkle drm_legacy_ prefixes
where missing.

v2: Drop the confusing _core_ and drop extern, both suggested by
David.

Cc: David Herrmann <dh.herrmann@gmail.com>
Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
parent edbaae5a
Loading
Loading
Loading
Loading
+1 −1
Original line number Original line Diff line number Diff line
@@ -1338,7 +1338,7 @@ int drm_legacy_freebufs(struct drm_device *dev, void *data,
				  task_pid_nr(current));
				  task_pid_nr(current));
			return -EINVAL;
			return -EINVAL;
		}
		}
		drm_free_buffer(dev, buf);
		drm_legacy_free_buffer(dev, buf);
	}
	}


	return 0;
	return 0;
+4 −6
Original line number Original line Diff line number Diff line
@@ -124,7 +124,7 @@ void drm_legacy_dma_takedown(struct drm_device *dev)
 *
 *
 * Resets the fields of \p buf.
 * Resets the fields of \p buf.
 */
 */
void drm_free_buffer(struct drm_device *dev, struct drm_buf * buf)
void drm_legacy_free_buffer(struct drm_device *dev, struct drm_buf * buf)
{
{
	if (!buf)
	if (!buf)
		return;
		return;
@@ -142,7 +142,7 @@ void drm_free_buffer(struct drm_device *dev, struct drm_buf * buf)
 *
 *
 * Frees each buffer associated with \p file_priv not already on the hardware.
 * Frees each buffer associated with \p file_priv not already on the hardware.
 */
 */
void drm_core_reclaim_buffers(struct drm_device *dev,
void drm_legacy_reclaim_buffers(struct drm_device *dev,
				struct drm_file *file_priv)
				struct drm_file *file_priv)
{
{
	struct drm_device_dma *dma = dev->dma;
	struct drm_device_dma *dma = dev->dma;
@@ -154,7 +154,7 @@ void drm_core_reclaim_buffers(struct drm_device *dev,
		if (dma->buflist[i]->file_priv == file_priv) {
		if (dma->buflist[i]->file_priv == file_priv) {
			switch (dma->buflist[i]->list) {
			switch (dma->buflist[i]->list) {
			case DRM_LIST_NONE:
			case DRM_LIST_NONE:
				drm_free_buffer(dev, dma->buflist[i]);
				drm_legacy_free_buffer(dev, dma->buflist[i]);
				break;
				break;
			case DRM_LIST_WAIT:
			case DRM_LIST_WAIT:
				dma->buflist[i]->list = DRM_LIST_RECLAIM;
				dma->buflist[i]->list = DRM_LIST_RECLAIM;
@@ -166,5 +166,3 @@ void drm_core_reclaim_buffers(struct drm_device *dev,
		}
		}
	}
	}
}
}

EXPORT_SYMBOL(drm_core_reclaim_buffers);
+1 −1
Original line number Original line Diff line number Diff line
@@ -404,7 +404,7 @@ int drm_release(struct inode *inode, struct file *filp)
		drm_master_release(dev, filp);
		drm_master_release(dev, filp);


	if (drm_core_check_feature(dev, DRIVER_HAVE_DMA))
	if (drm_core_check_feature(dev, DRIVER_HAVE_DMA))
		drm_core_reclaim_buffers(dev, file_priv);
		drm_legacy_reclaim_buffers(dev, file_priv);


	drm_events_release(file_priv);
	drm_events_release(file_priv);


+8 −0
Original line number Original line Diff line number Diff line
@@ -92,4 +92,12 @@ int drm_legacy_lock(struct drm_device *d, void *v, struct drm_file *f);
int drm_legacy_unlock(struct drm_device *d, void *v, struct drm_file *f);
int drm_legacy_unlock(struct drm_device *d, void *v, struct drm_file *f);
int drm_legacy_lock_free(struct drm_lock_data *lock, unsigned int ctx);
int drm_legacy_lock_free(struct drm_lock_data *lock, unsigned int ctx);


/* DMA support */
int drm_legacy_dma_setup(struct drm_device *dev);
void drm_legacy_dma_takedown(struct drm_device *dev);
void drm_legacy_free_buffer(struct drm_device *dev,
			    struct drm_buf * buf);
void drm_legacy_reclaim_buffers(struct drm_device *dev,
				struct drm_file *filp);

#endif /* __DRM_LEGACY_H__ */
#endif /* __DRM_LEGACY_H__ */
+0 −7
Original line number Original line Diff line number Diff line
@@ -1140,13 +1140,6 @@ void drm_clflush_virt_range(void *addr, unsigned long length);
 * DMA quiscent + idle. DMA quiescent usually requires the hardware lock.
 * DMA quiscent + idle. DMA quiescent usually requires the hardware lock.
 */
 */


				/* DMA support (drm_dma.h) */
extern int drm_legacy_dma_setup(struct drm_device *dev);
extern void drm_legacy_dma_takedown(struct drm_device *dev);
extern void drm_free_buffer(struct drm_device *dev, struct drm_buf * buf);
extern void drm_core_reclaim_buffers(struct drm_device *dev,
				     struct drm_file *filp);

				/* IRQ support (drm_irq.h) */
				/* IRQ support (drm_irq.h) */
extern int drm_control(struct drm_device *dev, void *data,
extern int drm_control(struct drm_device *dev, void *data,
		       struct drm_file *file_priv);
		       struct drm_file *file_priv);