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

Commit 94477bff authored by Sinclair Yeh's avatar Sinclair Yeh
Browse files

drm/ttm: Make ttm_bo_mem_compat available



There are cases where it is desired to see if a proposed placement
is compatible with a buffer object before calling ttm_bo_validate().

Signed-off-by: default avatarSinclair Yeh <syeh@vmware.com>
Reviewed-by: default avatarThomas Hellstrom <thellstrom@vmware.com>
Cc: <stable@vger.kernel.org>
---
This is the first of a 3-patch series to fix a black screen
issue observed on Ubuntu 16.04 server.
parent 04319d89
Loading
Loading
Loading
Loading
+4 −3
Original line number Diff line number Diff line
@@ -1034,7 +1034,7 @@ static int ttm_bo_move_buffer(struct ttm_buffer_object *bo,
	return ret;
}

static bool ttm_bo_mem_compat(struct ttm_placement *placement,
bool ttm_bo_mem_compat(struct ttm_placement *placement,
		       struct ttm_mem_reg *mem,
		       uint32_t *new_flags)
{
@@ -1068,6 +1068,7 @@ static bool ttm_bo_mem_compat(struct ttm_placement *placement,

	return false;
}
EXPORT_SYMBOL(ttm_bo_mem_compat);

int ttm_bo_validate(struct ttm_buffer_object *bo,
			struct ttm_placement *placement,
+14 −0
Original line number Diff line number Diff line
@@ -316,6 +316,20 @@ ttm_bo_reference(struct ttm_buffer_object *bo)
 */
extern int ttm_bo_wait(struct ttm_buffer_object *bo,
		       bool interruptible, bool no_wait);

/**
 * ttm_bo_mem_compat - Check if proposed placement is compatible with a bo
 *
 * @placement:  Return immediately if buffer is busy.
 * @mem:  The struct ttm_mem_reg indicating the region where the bo resides
 * @new_flags: Describes compatible placement found
 *
 * Returns true if the placement is compatible
 */
extern bool ttm_bo_mem_compat(struct ttm_placement *placement,
			      struct ttm_mem_reg *mem,
			      uint32_t *new_flags);

/**
 * ttm_bo_validate
 *