disp: msm: sde: set force dirty for UCSC range/enum msm properties

Install volatile enum and range properties for UCSC IGC, GC, UNMULT
and ALPHA_DITHER. This will mark the force dirty property data as
true, and will avoid caching in driver by always applying the
property values set by userspace, rather than checking for modified
values.

Change-Id: Ib8132165fb58ddc829bf8610657e302e0798d72f
Signed-off-by: Alisha Thapaliya <quic_athapali@quicinc.com>
This commit is contained in:
Alisha Thapaliya
2023-01-30 14:09:07 -08:00
parent fbf774bf9b
commit 6567abf76c
3 changed files with 67 additions and 7 deletions

View File

@@ -1,5 +1,6 @@
/* SPDX-License-Identifier: GPL-2.0-only */
/*
* Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved.
* Copyright (c) 2016-2020, The Linux Foundation. All rights reserved.
*/
@@ -262,6 +263,30 @@ void msm_property_install_enum(struct msm_property_info *info,
u32 init_idx,
uint32_t property_idx);
/**
* msm_property_install_volatile_enum - install standard drm enum/bitmask property
* This function is similar to msm_property_install_enum, but assumes
* that the property is meant for holding user pointers or descriptors
* that may reference volatile data without having an updated value.
* @info: Pointer to property info container struct
* @name: Property name
* @flags: Other property type flags, e.g. DRM_MODE_PROP_IMMUTABLE
* @is_bitmask: Set to non-zero to create a bitmask property, rather than an
* enumeration one
* @values: Array of allowable enumeration/bitmask values
* @num_values: Size of values array
* @init_idx: index of the values array entry to initialize the property
* @property_idx: Property index
*/
void msm_property_install_volatile_enum(struct msm_property_info *info,
const char *name,
int flags,
int is_bitmask,
const struct drm_prop_enum_list *values,
int num_values,
u32 init_idx,
uint32_t property_idx);
/**
* msm_property_install_blob - install standard drm blob property
* @info: Pointer to property info container struct