Add structures using which user space can set a color pipeline it desires. The patch introduces two structures struct drm_color_op_data represents data to be passed onto individual color hardware blocks. struct drm_color_pipeline represents the aggregate of drm_color_op_data structures to program the respective color hardware blocks of the pipeline. It also contains the pipeline number to be set. Co-developed-by: Chaitanya Kumar Borah <chaitanya.kumar.borah@xxxxxxxxx> Signed-off-by: Chaitanya Kumar Borah <chaitanya.kumar.borah@xxxxxxxxx> Signed-off-by: Uma Shankar <uma.shankar@xxxxxxxxx> --- include/uapi/drm/drm_mode.h | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/include/uapi/drm/drm_mode.h b/include/uapi/drm/drm_mode.h index 882479f41745..a21825ee93e2 100644 --- a/include/uapi/drm/drm_mode.h +++ b/include/uapi/drm/drm_mode.h @@ -1015,6 +1015,36 @@ struct drm_color_op { __u32 private_flags; }; +/** + * struct drm_color_op_data + * + * Structure for userspace to send data to a particular color operation + * block. + * + * @name: Name of the color block for which the data is being sent + * @blob_id: Id pointing to blob with data for the color operation block + */ +struct drm_color_op_data { + enum color_op_block name; + __u32 blob_id; +}; + +/** + * struct drm_color_pipeline + * + * This structure represents the aggregate pipeline to be set + * + * @num: pipeline number to be selected + * @size: size of the data to be passed onto the driver + * @data: array of struct drm_color_op_data with data for the + * hardware block/s that user space wants to set values for + */ +struct drm_color_pipeline { + int num; + int size; + struct drm_color_op_data *data; +}; + /** * DRM_MODE_PAGE_FLIP_EVENT * -- 2.38.1