drm: Add drm_atomic_get_old/new_private_obj_state
This pair of functions return the old/new private object state for the given private_obj, or NULL if the private_obj is not part of the global atomic state. Reviewed-by: Alexandru Gheorghe <alexandru-cosmin.gheorghe@arm.com> Signed-off-by: James Qian Wang (Arm Technology China) <james.qian.wang@arm.com> Signed-off-by: Liviu Dudau <liviu.dudau@arm.com>
This commit is contained in:
parent
7c13e5cc23
commit
9801a7eadf
|
@ -797,6 +797,50 @@ drm_atomic_get_private_obj_state(struct drm_atomic_state *state,
|
|||
}
|
||||
EXPORT_SYMBOL(drm_atomic_get_private_obj_state);
|
||||
|
||||
/**
|
||||
* drm_atomic_get_old_private_obj_state
|
||||
* @state: global atomic state object
|
||||
* @obj: private_obj to grab
|
||||
*
|
||||
* This function returns the old private object state for the given private_obj,
|
||||
* or NULL if the private_obj is not part of the global atomic state.
|
||||
*/
|
||||
struct drm_private_state *
|
||||
drm_atomic_get_old_private_obj_state(struct drm_atomic_state *state,
|
||||
struct drm_private_obj *obj)
|
||||
{
|
||||
int i;
|
||||
|
||||
for (i = 0; i < state->num_private_objs; i++)
|
||||
if (obj == state->private_objs[i].ptr)
|
||||
return state->private_objs[i].old_state;
|
||||
|
||||
return NULL;
|
||||
}
|
||||
EXPORT_SYMBOL(drm_atomic_get_old_private_obj_state);
|
||||
|
||||
/**
|
||||
* drm_atomic_get_new_private_obj_state
|
||||
* @state: global atomic state object
|
||||
* @obj: private_obj to grab
|
||||
*
|
||||
* This function returns the new private object state for the given private_obj,
|
||||
* or NULL if the private_obj is not part of the global atomic state.
|
||||
*/
|
||||
struct drm_private_state *
|
||||
drm_atomic_get_new_private_obj_state(struct drm_atomic_state *state,
|
||||
struct drm_private_obj *obj)
|
||||
{
|
||||
int i;
|
||||
|
||||
for (i = 0; i < state->num_private_objs; i++)
|
||||
if (obj == state->private_objs[i].ptr)
|
||||
return state->private_objs[i].new_state;
|
||||
|
||||
return NULL;
|
||||
}
|
||||
EXPORT_SYMBOL(drm_atomic_get_new_private_obj_state);
|
||||
|
||||
/**
|
||||
* drm_atomic_get_connector_state - get connector state
|
||||
* @state: global atomic state object
|
||||
|
@ -1236,4 +1280,3 @@ int drm_atomic_debugfs_init(struct drm_minor *minor)
|
|||
minor->debugfs_root, minor);
|
||||
}
|
||||
#endif
|
||||
|
||||
|
|
|
@ -452,6 +452,12 @@ void drm_atomic_private_obj_fini(struct drm_private_obj *obj);
|
|||
struct drm_private_state * __must_check
|
||||
drm_atomic_get_private_obj_state(struct drm_atomic_state *state,
|
||||
struct drm_private_obj *obj);
|
||||
struct drm_private_state *
|
||||
drm_atomic_get_old_private_obj_state(struct drm_atomic_state *state,
|
||||
struct drm_private_obj *obj);
|
||||
struct drm_private_state *
|
||||
drm_atomic_get_new_private_obj_state(struct drm_atomic_state *state,
|
||||
struct drm_private_obj *obj);
|
||||
|
||||
/**
|
||||
* drm_atomic_get_existing_crtc_state - get crtc state, if it exists
|
||||
|
|
Loading…
Reference in New Issue