From patchwork Wed May 23 19:31:02 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jeykumar Sankaran X-Patchwork-Id: 10422183 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id 390796032C for ; Wed, 23 May 2018 19:31:25 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 27B88291B5 for ; Wed, 23 May 2018 19:31:25 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 1BCFA291B6; Wed, 23 May 2018 19:31:25 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-5.2 required=2.0 tests=BAYES_00, MAILING_LIST_MULTI, RCVD_IN_DNSWL_MED autolearn=ham version=3.3.1 Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher DHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id E1B9A291B9 for ; Wed, 23 May 2018 19:31:23 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id C0F4B6E570; Wed, 23 May 2018 19:31:22 +0000 (UTC) X-Original-To: dri-devel@lists.freedesktop.org Delivered-To: dri-devel@lists.freedesktop.org Received: from smtp.codeaurora.org (smtp.codeaurora.org [198.145.29.96]) by gabe.freedesktop.org (Postfix) with ESMTPS id E06986E56E; Wed, 23 May 2018 19:31:21 +0000 (UTC) Received: by smtp.codeaurora.org (Postfix, from userid 1000) id 4093260F93; Wed, 23 May 2018 19:31:20 +0000 (UTC) Received: from jeykumar-linux.qualcomm.com (i-global254.qualcomm.com [199.106.103.254]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-SHA256 (128/128 bits)) (No client certificate requested) (Authenticated sender: jsanka@smtp.codeaurora.org) by smtp.codeaurora.org (Postfix) with ESMTPSA id C628760C66; Wed, 23 May 2018 19:31:16 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 smtp.codeaurora.org C628760C66 From: Jeykumar Sankaran To: dri-devel@lists.freedesktop.org, freedreno@lists.freedesktop.org, linux-arm-msm@vger.kernel.org Subject: [DPU PATCH 7/7] drm/msm: remove dpu specific uapi header Date: Wed, 23 May 2018 12:31:02 -0700 Message-Id: <1527103862-13934-8-git-send-email-jsanka@codeaurora.org> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1527103862-13934-1-git-send-email-jsanka@codeaurora.org> References: <1527103862-13934-1-git-send-email-jsanka@codeaurora.org> X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: hoegsberg@google.com MIME-Version: 1.0 Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" X-Virus-Scanned: ClamAV using ClamSMTP remove unwanted dpu uapi headers exposing custom payload layouts for custom properties Signed-off-by: Jeykumar Sankaran Reviewed-by: Sean Paul --- include/uapi/drm/dpu_drm.h | 220 --------------------------- include/uapi/drm/msm_drm_pp.h | 345 ------------------------------------------ 2 files changed, 565 deletions(-) delete mode 100644 include/uapi/drm/dpu_drm.h delete mode 100644 include/uapi/drm/msm_drm_pp.h diff --git a/include/uapi/drm/dpu_drm.h b/include/uapi/drm/dpu_drm.h deleted file mode 100644 index 93af1fb..0000000 --- a/include/uapi/drm/dpu_drm.h +++ /dev/null @@ -1,220 +0,0 @@ -#ifndef _DPU_DRM_H_ -#define _DPU_DRM_H_ - -#include "drm.h" - -/* Total number of supported color planes */ -#define DPU_MAX_PLANES 4 - -/* Total number of parameterized detail enhancer mapping curves */ -#define DPU_MAX_DE_CURVES 3 - - /* Y/RGB and UV filter configuration */ -#define FILTER_EDGE_DIRECTED_2D 0x0 -#define FILTER_CIRCULAR_2D 0x1 -#define FILTER_SEPARABLE_1D 0x2 -#define FILTER_BILINEAR 0x3 - -/* Alpha filters */ -#define FILTER_ALPHA_DROP_REPEAT 0x0 -#define FILTER_ALPHA_BILINEAR 0x1 -#define FILTER_ALPHA_2D 0x3 - -/* Blend filters */ -#define FILTER_BLEND_CIRCULAR_2D 0x0 -#define FILTER_BLEND_SEPARABLE_1D 0x1 - -/* LUT configuration flags */ -#define SCALER_LUT_SWAP 0x1 -#define SCALER_LUT_DIR_WR 0x2 -#define SCALER_LUT_Y_CIR_WR 0x4 -#define SCALER_LUT_UV_CIR_WR 0x8 -#define SCALER_LUT_Y_SEP_WR 0x10 -#define SCALER_LUT_UV_SEP_WR 0x20 - -/** - * Blend operations for "blend_op" property - * - * @DPU_DRM_BLEND_OP_NOT_DEFINED: No blend operation defined for the layer. - * @DPU_DRM_BLEND_OP_OPAQUE: Apply a constant blend operation. The layer - * would appear opaque in case fg plane alpha - * is 0xff. - * @DPU_DRM_BLEND_OP_PREMULTIPLIED: Apply source over blend rule. Layer already - * has alpha pre-multiplication done. If the fg - * plane alpha is less than 0xff, apply - * modulation as well. This operation is - * intended on layers having alpha channel. - * @DPU_DRM_BLEND_OP_COVERAGE: Apply source over blend rule. Layer is not - * alpha pre-multiplied. Apply - * pre-multiplication. If fg plane alpha is - * less than 0xff, apply modulation as well. - * @DPU_DRM_BLEND_OP_MAX: Used to track maximum blend operation - * possible by mdp. - */ -#define DPU_DRM_BLEND_OP_NOT_DEFINED 0 -#define DPU_DRM_BLEND_OP_OPAQUE 1 -#define DPU_DRM_BLEND_OP_PREMULTIPLIED 2 -#define DPU_DRM_BLEND_OP_COVERAGE 3 -#define DPU_DRM_BLEND_OP_MAX 4 - -/** - * Bit masks for "src_config" property - * construct bitmask via (1UL << DPU_DRM_) - */ -#define DPU_DRM_DEINTERLACE 0 /* Specifies interlaced input */ - -/* DRM bitmasks are restricted to 0..63 */ -#define DPU_DRM_BITMASK_COUNT 64 - -/* Number of dest scalers supported */ -#define DPU_MAX_DS_COUNT 2 - -/* - * Destination scaler flag config - */ -#define DPU_DRM_DESTSCALER_ENABLE 0x1 -#define DPU_DRM_DESTSCALER_SCALE_UPDATE 0x2 -#define DPU_DRM_DESTSCALER_ENHANCER_UPDATE 0x4 -#define DPU_DRM_DESTSCALER_PU_ENABLE 0x8 - -/** - * struct dpu_drm_dest_scaler_cfg - destination scaler config structure - * @flags: Flag to switch between mode for destination scaler - * refer to destination scaler flag config - * @index: Destination scaler selection index - * @lm_width: Layer mixer width configuration - * @lm_height: Layer mixer height configuration - * @scaler_cfg: The scaling parameters for all the mode except disable - * Userspace pointer to struct dpu_drm_scaler_v2 - */ -struct dpu_drm_dest_scaler_cfg { - uint32_t flags; - uint32_t index; - uint32_t lm_width; - uint32_t lm_height; - uint64_t scaler_cfg; -}; - -/** - * struct dpu_drm_dest_scaler_data - destination scaler data struct - * @num_dest_scaler: Number of dest scalers to be configured - * @ds_cfg: Destination scaler block configuration - */ -struct dpu_drm_dest_scaler_data { - uint32_t num_dest_scaler; - struct dpu_drm_dest_scaler_cfg ds_cfg[DPU_MAX_DS_COUNT]; -}; - -/* - * Define constants for struct dpu_drm_csc - */ -#define DPU_CSC_MATRIX_COEFF_SIZE 9 -#define DPU_CSC_CLAMP_SIZE 6 -#define DPU_CSC_BIAS_SIZE 3 - -/** - * struct dpu_drm_csc_v1 - version 1 of struct dpu_drm_csc - * @ctm_coeff: Matrix coefficients, in S31.32 format - * @pre_bias: Pre-bias array values - * @post_bias: Post-bias array values - * @pre_clamp: Pre-clamp array values - * @post_clamp: Post-clamp array values - */ -struct dpu_drm_csc_v1 { - int64_t ctm_coeff[DPU_CSC_MATRIX_COEFF_SIZE]; - uint32_t pre_bias[DPU_CSC_BIAS_SIZE]; - uint32_t post_bias[DPU_CSC_BIAS_SIZE]; - uint32_t pre_clamp[DPU_CSC_CLAMP_SIZE]; - uint32_t post_clamp[DPU_CSC_CLAMP_SIZE]; -}; - -/** - * struct dpu_drm_color - struct to store the color and alpha values - * @color_0: Color 0 value - * @color_1: Color 1 value - * @color_2: Color 2 value - * @color_3: Color 3 value - */ -struct dpu_drm_color { - uint32_t color_0; - uint32_t color_1; - uint32_t color_2; - uint32_t color_3; -}; - -/* Total number of supported dim layers */ -#define DPU_MAX_DIM_LAYERS 7 - -/* DPU_DRM_DIM_LAYER_CONFIG_FLAG - flags for Dim Layer */ -/* Color fill inside of the rect, including border */ -#define DPU_DRM_DIM_LAYER_INCLUSIVE 0x1 -/* Color fill outside of the rect, excluding border */ -#define DPU_DRM_DIM_LAYER_EXCLUSIVE 0x2 - -/** - * struct dpu_drm_dim_layer - dim layer cfg struct - * @flags: Refer DPU_DRM_DIM_LAYER_CONFIG_FLAG for possible values - * @stage: Blending stage of the dim layer - * @color_fill: Color fill for dim layer - * @rect: Dim layer coordinates - */ -struct dpu_drm_dim_layer_cfg { - uint32_t flags; - uint32_t stage; - struct dpu_drm_color color_fill; - struct drm_clip_rect rect; -}; - -/** - * struct dpu_drm_dim_layer_v1 - version 1 of dim layer struct - * @num_layers: Numer of Dim Layers - * @layer: Dim layer user cfgs ptr for the num_layers - */ -struct dpu_drm_dim_layer_v1 { - uint32_t num_layers; - struct dpu_drm_dim_layer_cfg layer_cfg[DPU_MAX_DIM_LAYERS]; -}; - -/* Writeback Config version definition */ -#define DPU_DRM_WB_CFG 0x1 - -/* DPU_DRM_WB_CONFIG_FLAGS - Writeback configuration flags */ -#define DPU_DRM_WB_CFG_FLAGS_CONNECTED (1<<0) - -/** - * struct dpu_drm_wb_cfg - Writeback configuration structure - * @flags: see DRM_MSM_WB_CONFIG_FLAGS - * @connector_id: writeback connector identifier - * @count_modes: Count of modes in modes_ptr - * @modes: Pointer to struct drm_mode_modeinfo - */ -struct dpu_drm_wb_cfg { - uint32_t flags; - uint32_t connector_id; - uint32_t count_modes; - uint64_t modes; -}; - -#define DPU_MAX_ROI_V1 4 - -/** - * struct dpu_drm_roi_v1 - list of regions of interest for a drm object - * @num_rects: number of valid rectangles in the roi array - * @roi: list of roi rectangles - */ -struct dpu_drm_roi_v1 { - uint32_t num_rects; - struct drm_clip_rect roi[DPU_MAX_ROI_V1]; -}; - -/** - * Define extended power modes supported by the DPU connectors. - */ -#define DPU_MODE_DPMS_ON 0 -#define DPU_MODE_DPMS_LP1 1 -#define DPU_MODE_DPMS_LP2 2 -#define DPU_MODE_DPMS_STANDBY 3 -#define DPU_MODE_DPMS_SUSPEND 4 -#define DPU_MODE_DPMS_OFF 5 - -#endif /* _DPU_DRM_H_ */ diff --git a/include/uapi/drm/msm_drm_pp.h b/include/uapi/drm/msm_drm_pp.h deleted file mode 100644 index a3b5794..0000000 --- a/include/uapi/drm/msm_drm_pp.h +++ /dev/null @@ -1,345 +0,0 @@ -#ifndef _MSM_DRM_PP_H_ -#define _MSM_DRM_PP_H_ - -#include -/** - * struct drm_msm_pcc_coeff - PCC coefficient structure for each color - * component. - * @c: constant coefficient. - * @r: red coefficient. - * @g: green coefficient. - * @b: blue coefficient. - * @rg: red green coefficient. - * @gb: green blue coefficient. - * @rb: red blue coefficient. - * @rgb: red blue green coefficient. - */ - -struct drm_msm_pcc_coeff { - __u32 c; - __u32 r; - __u32 g; - __u32 b; - __u32 rg; - __u32 gb; - __u32 rb; - __u32 rgb; -}; - -/** - * struct drm_msm_pcc - pcc feature structure - * @flags: for customizing operations - * @r: red coefficients. - * @g: green coefficients. - * @b: blue coefficients. - * @r_rr: second order coefficients - * @r_gg: second order coefficients - * @r_bb: second order coefficients - * @g_rr: second order coefficients - * @g_gg: second order coefficients - * @g_bb: second order coefficients - * @b_rr: second order coefficients - * @b_gg: second order coefficients - * @b_bb: second order coefficients - */ -#define DRM_MSM_PCC3 -struct drm_msm_pcc { - __u64 flags; - struct drm_msm_pcc_coeff r; - struct drm_msm_pcc_coeff g; - struct drm_msm_pcc_coeff b; - __u32 r_rr; - __u32 r_gg; - __u32 r_bb; - __u32 g_rr; - __u32 g_gg; - __u32 g_bb; - __u32 b_rr; - __u32 b_gg; - __u32 b_bb; -}; - -/* struct drm_msm_pa_vlut - picture adjustment vLUT structure - * flags: for customizing vlut operation - * val: vLUT values - */ -#define PA_VLUT_SIZE 256 -struct drm_msm_pa_vlut { - __u64 flags; - __u32 val[PA_VLUT_SIZE]; -}; - -/* struct drm_msm_memcol - Memory color feature structure. - * Skin, sky, foliage features are supported. - * @prot_flags: Bit mask for enabling protection feature. - * @color_adjust_p0: Adjustment curve. - * @color_adjust_p1: Adjustment curve. - * @color_adjust_p2: Adjustment curve. - * @blend_gain: Blend gain weightage from othe PA features. - * @sat_hold: Saturation hold value. - * @val_hold: Value hold info. - * @hue_region: Hue qualifier. - * @sat_region: Saturation qualifier. - * @val_region: Value qualifier. - */ -#define DRM_MSM_MEMCOL -struct drm_msm_memcol { - __u64 prot_flags; - __u32 color_adjust_p0; - __u32 color_adjust_p1; - __u32 color_adjust_p2; - __u32 blend_gain; - __u32 sat_hold; - __u32 val_hold; - __u32 hue_region; - __u32 sat_region; - __u32 val_region; -}; - -#define GAMUT_3D_MODE_17 1 -#define GAMUT_3D_MODE_5 2 -#define GAMUT_3D_MODE_13 3 - -#define GAMUT_3D_MODE17_TBL_SZ 1229 -#define GAMUT_3D_MODE5_TBL_SZ 32 -#define GAMUT_3D_MODE13_TBL_SZ 550 -#define GAMUT_3D_SCALE_OFF_SZ 16 -#define GAMUT_3D_SCALEB_OFF_SZ 12 -#define GAMUT_3D_TBL_NUM 4 -#define GAMUT_3D_SCALE_OFF_TBL_NUM 3 -#define GAMUT_3D_MAP_EN (1 << 0) - -/** - * struct drm_msm_3d_col - 3d gamut color component structure - * @c0: Holds c0 value - * @c2_c1: Holds c2/c1 values - */ -struct drm_msm_3d_col { - __u32 c2_c1; - __u32 c0; -}; -/** - * struct drm_msm_3d_gamut - 3d gamut feature structure - * @flags: flags for the feature values are: - * 0 - no map - * GAMUT_3D_MAP_EN - enable map - * @mode: lut mode can take following values: - * - GAMUT_3D_MODE_17 - * - GAMUT_3D_MODE_5 - * - GAMUT_3D_MODE_13 - * @scale_off: Scale offset table - * @col: Color component tables - */ -struct drm_msm_3d_gamut { - __u64 flags; - __u32 mode; - __u32 scale_off[GAMUT_3D_SCALE_OFF_TBL_NUM][GAMUT_3D_SCALE_OFF_SZ]; - struct drm_msm_3d_col col[GAMUT_3D_TBL_NUM][GAMUT_3D_MODE17_TBL_SZ]; -}; - -#define PGC_TBL_LEN 512 -#define PGC_8B_ROUND (1 << 0) -/** - * struct drm_msm_pgc_lut - pgc lut feature structure - * @flags: flags for the featue values can be: - * - PGC_8B_ROUND - * @c0: color0 component lut - * @c1: color1 component lut - * @c2: color2 component lut - */ -struct drm_msm_pgc_lut { - __u64 flags; - __u32 c0[PGC_TBL_LEN]; - __u32 c1[PGC_TBL_LEN]; - __u32 c2[PGC_TBL_LEN]; -}; - -#define IGC_TBL_LEN 256 -#define IGC_DITHER_ENABLE (1 << 0) -/** - * struct drm_msm_igc_lut - igc lut feature structure - * @flags: flags for the feature customization, values can be: - * - IGC_DITHER_ENABLE: Enable dither functionality - * @c0: color0 component lut - * @c1: color1 component lut - * @c2: color2 component lut - * @strength: dither strength, considered valid when IGC_DITHER_ENABLE - * is set in flags. Strength value based on source bit width. - */ -struct drm_msm_igc_lut { - __u64 flags; - __u32 c0[IGC_TBL_LEN]; - __u32 c1[IGC_TBL_LEN]; - __u32 c2[IGC_TBL_LEN]; - __u32 strength; -}; - -#define AD4_LUT_GRP0_SIZE 33 -#define AD4_LUT_GRP1_SIZE 32 -/* - * struct drm_msm_ad4_init - ad4 init structure set by user-space client. - * Init param values can change based on tuning - * hence it is passed by user-space clients. - */ -struct drm_msm_ad4_init { - __u32 init_param_001[AD4_LUT_GRP0_SIZE]; - __u32 init_param_002[AD4_LUT_GRP0_SIZE]; - __u32 init_param_003[AD4_LUT_GRP0_SIZE]; - __u32 init_param_004[AD4_LUT_GRP0_SIZE]; - __u32 init_param_005[AD4_LUT_GRP1_SIZE]; - __u32 init_param_006[AD4_LUT_GRP1_SIZE]; - __u32 init_param_007[AD4_LUT_GRP0_SIZE]; - __u32 init_param_008[AD4_LUT_GRP0_SIZE]; - __u32 init_param_009; - __u32 init_param_010; - __u32 init_param_011; - __u32 init_param_012; - __u32 init_param_013; - __u32 init_param_014; - __u32 init_param_015; - __u32 init_param_016; - __u32 init_param_017; - __u32 init_param_018; - __u32 init_param_019; - __u32 init_param_020; - __u32 init_param_021; - __u32 init_param_022; - __u32 init_param_023; - __u32 init_param_024; - __u32 init_param_025; - __u32 init_param_026; - __u32 init_param_027; - __u32 init_param_028; - __u32 init_param_029; - __u32 init_param_030; - __u32 init_param_031; - __u32 init_param_032; - __u32 init_param_033; - __u32 init_param_034; - __u32 init_param_035; - __u32 init_param_036; - __u32 init_param_037; - __u32 init_param_038; - __u32 init_param_039; - __u32 init_param_040; - __u32 init_param_041; - __u32 init_param_042; - __u32 init_param_043; - __u32 init_param_044; - __u32 init_param_045; - __u32 init_param_046; - __u32 init_param_047; - __u32 init_param_048; - __u32 init_param_049; - __u32 init_param_050; - __u32 init_param_051; - __u32 init_param_052; - __u32 init_param_053; - __u32 init_param_054; - __u32 init_param_055; - __u32 init_param_056; - __u32 init_param_057; - __u32 init_param_058; - __u32 init_param_059; - __u32 init_param_060; - __u32 init_param_061; - __u32 init_param_062; - __u32 init_param_063; - __u32 init_param_064; - __u32 init_param_065; - __u32 init_param_066; - __u32 init_param_067; - __u32 init_param_068; - __u32 init_param_069; - __u32 init_param_070; - __u32 init_param_071; - __u32 init_param_072; - __u32 init_param_073; - __u32 init_param_074; - __u32 init_param_075; -}; - -/* - * struct drm_msm_ad4_cfg - ad4 config structure set by user-space client. - * Config param values can vary based on tuning, - * hence it is passed by user-space clients. - */ -struct drm_msm_ad4_cfg { - __u32 cfg_param_001; - __u32 cfg_param_002; - __u32 cfg_param_003; - __u32 cfg_param_004; - __u32 cfg_param_005; - __u32 cfg_param_006; - __u32 cfg_param_007; - __u32 cfg_param_008; - __u32 cfg_param_009; - __u32 cfg_param_010; - __u32 cfg_param_011; - __u32 cfg_param_012; - __u32 cfg_param_013; - __u32 cfg_param_014; - __u32 cfg_param_015; - __u32 cfg_param_016; - __u32 cfg_param_017; - __u32 cfg_param_018; - __u32 cfg_param_019; - __u32 cfg_param_020; - __u32 cfg_param_021; - __u32 cfg_param_022; - __u32 cfg_param_023; - __u32 cfg_param_024; - __u32 cfg_param_025; - __u32 cfg_param_026; - __u32 cfg_param_027; - __u32 cfg_param_028; - __u32 cfg_param_029; - __u32 cfg_param_030; - __u32 cfg_param_031; - __u32 cfg_param_032; - __u32 cfg_param_033; - __u32 cfg_param_034; - __u32 cfg_param_035; - __u32 cfg_param_036; - __u32 cfg_param_037; - __u32 cfg_param_038; - __u32 cfg_param_039; - __u32 cfg_param_040; - __u32 cfg_param_041; - __u32 cfg_param_042; - __u32 cfg_param_043; - __u32 cfg_param_044; - __u32 cfg_param_045; - __u32 cfg_param_046; - __u32 cfg_param_047; - __u32 cfg_param_048; - __u32 cfg_param_049; - __u32 cfg_param_050; - __u32 cfg_param_051; - __u32 cfg_param_052; - __u32 cfg_param_053; -}; - -#define DITHER_MATRIX_SZ 16 - -/** - * struct drm_msm_dither - dither feature structure - * @flags: for customizing operations - * @temporal_en: temperal dither enable - * @c0_bitdepth: c0 component bit depth - * @c1_bitdepth: c1 component bit depth - * @c2_bitdepth: c2 component bit depth - * @c3_bitdepth: c2 component bit depth - * @matrix: dither strength matrix - */ -struct drm_msm_dither { - __u64 flags; - __u32 temporal_en; - __u32 c0_bitdepth; - __u32 c1_bitdepth; - __u32 c2_bitdepth; - __u32 c3_bitdepth; - __u32 matrix[DITHER_MATRIX_SZ]; -}; - -#endif /* _MSM_DRM_PP_H_ */