aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/drm_crtc_internal.h
diff options
context:
space:
mode:
authorMaarten Lankhorst <maarten.lankhorst@linux.intel.com>2016-09-08 12:30:01 +0200
committerSean Paul <seanpaul@chromium.org>2016-09-12 10:32:49 -0400
commitf92f053bb60924297afb8a1bd9166712c0fe5e88 (patch)
tree36757ced97dcccda57022260ccc53c96e9945f8a /drivers/gpu/drm/drm_crtc_internal.h
parentdrm/bridge: adv7511: add support for the 2nd chip (diff)
downloadlinux-dev-f92f053bb60924297afb8a1bd9166712c0fe5e88.tar.xz
linux-dev-f92f053bb60924297afb8a1bd9166712c0fe5e88.zip
drm: Move property validation to a helper, v2.
Property lifetimes are equal to the device lifetime, so the separate drm_property_find is not needed. The pointer can be retrieved from the properties member, which saves us some locking and a extra lookup. The lifetime for properties is until the device is destroyed, which happens late in the device unload path. kms_atomic is also testing for invalid properties which returns -ENOENT, to be consistent return -ENOENT for valid properties that don't appear on the object property list. Changes since v1: - Return -ENOENT for invalid properties to make kms_atomic pass. - Change commit message slightly to take this into account. Testcase: kms_atomic Testcase: kms_properties Fixes: 4e9951d96093 ("drm/atomic: Reject properties not part of the object.") Suggested-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> Signed-off-by: Sean Paul <seanpaul@chromium.org> Link: http://patchwork.freedesktop.org/patch/msgid/599c7fa8-b6fd-a42b-c619-a9e4a9c5c244@linux.intel.com
Diffstat (limited to 'drivers/gpu/drm/drm_crtc_internal.h')
-rw-r--r--drivers/gpu/drm/drm_crtc_internal.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/gpu/drm/drm_crtc_internal.h b/drivers/gpu/drm/drm_crtc_internal.h
index a3622644bccf..444e609078cc 100644
--- a/drivers/gpu/drm/drm_crtc_internal.h
+++ b/drivers/gpu/drm/drm_crtc_internal.h
@@ -115,6 +115,8 @@ int drm_mode_object_get_properties(struct drm_mode_object *obj, bool atomic,
uint32_t __user *prop_ptr,
uint64_t __user *prop_values,
uint32_t *arg_count_props);
+struct drm_property *drm_mode_obj_find_prop_id(struct drm_mode_object *obj,
+ uint32_t prop_id);
/* IOCTL */