[PATCH -v4 5/8] drm/exynos: make zpos property immutable
Inki Dae
inki.dae at samsung.com
Fri Apr 3 04:30:08 PDT 2015
On 2015년 04월 02일 01:02, Gustavo Padovan wrote:
> From: Gustavo Padovan <gustavo.padovan at collabora.co.uk>
>
> We already set each plane zpos at init, after that changes to zpos are
> not expected. This patch turns zpos into a read-only property so now it is
> impossible to set zpos.
>
> Signed-off-by: Gustavo Padovan <gustavo.padovan at collabora.co.uk>
> ---
> drivers/gpu/drm/exynos/exynos_drm_plane.c | 21 ++-------------------
> 1 file changed, 2 insertions(+), 19 deletions(-)
>
> diff --git a/drivers/gpu/drm/exynos/exynos_drm_plane.c b/drivers/gpu/drm/exynos/exynos_drm_plane.c
> index 504bd6e..2fbac9b 100644
> --- a/drivers/gpu/drm/exynos/exynos_drm_plane.c
> +++ b/drivers/gpu/drm/exynos/exynos_drm_plane.c
> @@ -184,27 +184,10 @@ static void exynos_plane_destroy(struct drm_plane *plane)
> drm_plane_cleanup(plane);
> }
>
> -static int exynos_plane_set_property(struct drm_plane *plane,
> - struct drm_property *property,
> - uint64_t val)
> -{
> - struct drm_device *dev = plane->dev;
> - struct exynos_drm_plane *exynos_plane = to_exynos_plane(plane);
> - struct exynos_drm_private *dev_priv = dev->dev_private;
> -
> - if (property == dev_priv->plane_zpos_property) {
> - exynos_plane->zpos = val;
> - return 0;
> - }
> -
> - return -EINVAL;
> -}
> -
> static struct drm_plane_funcs exynos_plane_funcs = {
> .update_plane = exynos_update_plane,
> .disable_plane = exynos_disable_plane,
> .destroy = exynos_plane_destroy,
> - .set_property = exynos_plane_set_property,
As I commented like below before, This patch would make the
compatibility of the existing application which uses set_property ioctl
to be broken. Didn't you check my comment?
http://www.spinics.net/lists/dri-devel/msg78852.html
To other Exynos guys,
Is there no any case that the hardware overlay should be configurable?
If no case, I will merge this cleanup. After that, application can never
change hardware overlay to each plane.
Thanks,
Inki Dae
> };
>
> static void exynos_plane_attach_zpos_property(struct drm_plane *plane,
> @@ -216,8 +199,8 @@ static void exynos_plane_attach_zpos_property(struct drm_plane *plane,
>
> prop = dev_priv->plane_zpos_property;
> if (!prop) {
> - prop = drm_property_create_range(dev, 0, "zpos", 0,
> - MAX_PLANE - 1);
> + prop = drm_property_create_range(dev, DRM_MODE_PROP_IMMUTABLE,
> + "zpos", 0, MAX_PLANE - 1);
> if (!prop)
> return;
>
>
More information about the dri-devel
mailing list