blob: b907336c1e104a821c624c294a762aaedfb9286b [file] [log] [blame]
Uday Kiran Pichika5e656b22018-05-15 18:48:24 +05301/*
Rajavenu Kyathamb6292fb2018-06-08 14:29:19 +05302* Copyright (c) 2018-2020, The Linux Foundation. All rights reserved.
Uday Kiran Pichika5e656b22018-05-15 18:48:24 +05303*
4* Redistribution and use in source and binary forms, with or without
5* modification, are permitted provided that the following conditions are
6* met:
7* * Redistributions of source code must retain the above copyright
8* notice, this list of conditions and the following disclaimer.
9* * Redistributions in binary form must reproduce the above
10* copyright notice, this list of conditions and the following
11* disclaimer in the documentation and/or other materials provided
12* with the distribution.
13* * Neither the name of The Linux Foundation nor the names of its
14* contributors may be used to endorse or promote products derived
15* from this software without specific prior written permission.
16*
17* THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED
18* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
19* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT
20* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
21* BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
22* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
23* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
24* BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
25* WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
26* OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
27* IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28*/
29
30#ifndef __DISPLAY_PROPERTIES_H__
31#define __DISPLAY_PROPERTIES_H__
32
33#define DISP_PROP_PREFIX "vendor.display."
34#define GRALLOC_PROP_PREFIX "vendor.gralloc."
Uday Kiran Pichika5e656b22018-05-15 18:48:24 +053035#define PERSIST_DISP_PROP_PREFIX "persist.vendor.display."
36
37#define DISPLAY_PROP(prop_name) DISP_PROP_PREFIX prop_name
38#define GRALLOC_PROP(prop_name) GRALLOC_PROP_PREFIX prop_name
Uday Kiran Pichika5e656b22018-05-15 18:48:24 +053039#define PERSIST_DISPLAY_PROP(prop_name) PERSIST_DISP_PROP_PREFIX prop_name
40
Ramkumar Radhakrishnan5e9fb262019-06-10 11:28:03 -070041// Start of property
Uday Kiran Pichika5e656b22018-05-15 18:48:24 +053042#define COMPOSITION_MASK_PROP DISPLAY_PROP("comp_mask")
43#define HDMI_CONFIG_INDEX_PROP DISPLAY_PROP("hdmi_cfg_idx")
44#define IDLE_TIME_PROP DISPLAY_PROP("idle_time")
45#define IDLE_TIME_INACTIVE_PROP DISPLAY_PROP("idle_time_inactive")
Uday Kiran Pichika5e656b22018-05-15 18:48:24 +053046#define DISABLE_ROTATOR_DOWNSCALE_PROP DISPLAY_PROP("disable_rotator_downscale")
Saurabh Dubeyc71dfb22018-04-26 15:55:43 +053047// Enables rotator for UI
48#define ENABLE_ROTATOR_UI_PROP DISPLAY_PROP("enable_rotator_ui")
Uday Kiran Pichika5e656b22018-05-15 18:48:24 +053049#define DISABLE_DECIMATION_PROP DISPLAY_PROP("disable_decimation")
50#define PRIMARY_MIXER_STAGES_PROP DISPLAY_PROP("primary_mixer_stages")
51#define EXTERNAL_MIXER_STAGES_PROP DISPLAY_PROP("external_mixer_stages")
52#define VIRTUAL_MIXER_STAGES_PROP DISPLAY_PROP("virtual_mixer_stages")
53#define MAX_UPSCALE_PROP DISPLAY_PROP("max_upscale")
54#define VIDEO_MODE_PANEL_PROP DISPLAY_PROP("video_mode_panel")
55#define DISABLE_ROTATOR_UBWC_PROP DISPLAY_PROP("disable_rotator_ubwc")
56#define DISABLE_ROTATOR_SPLIT_PROP DISPLAY_PROP("disable_rotator_split")
57#define DISABLE_SCALER_PROP DISPLAY_PROP("disable_scaler")
58#define DISABLE_AVR_PROP DISPLAY_PROP("disable_avr")
59#define DISABLE_EXTERNAL_ANIMATION_PROP DISPLAY_PROP("disable_ext_anim")
60#define DISABLE_PARTIAL_SPLIT_PROP DISPLAY_PROP("disable_partial_split")
61#define PREFER_SOURCE_SPLIT_PROP DISPLAY_PROP("prefer_source_split")
62#define MIXER_RESOLUTION_PROP DISPLAY_PROP("mixer_resolution")
63#define SIMULATED_CONFIG_PROP DISPLAY_PROP("simulated_config")
64#define MAX_EXTERNAL_LAYERS_PROP DISPLAY_PROP("max_external_layers")
65#define PERF_HINT_WINDOW_PROP DISPLAY_PROP("perf_hint_window")
66#define ENABLE_EXTERNAL_DOWNSCALE_PROP DISPLAY_PROP("enable_external_downscale")
67#define EXTERNAL_ACTION_SAFE_WIDTH_PROP DISPLAY_PROP("external_action_safe_width")
68#define EXTERNAL_ACTION_SAFE_HEIGHT_PROP DISPLAY_PROP("external_action_safe_height")
69#define FB_WIDTH_PROP DISPLAY_PROP("fb_width")
70#define FB_HEIGHT_PROP DISPLAY_PROP("fb_height")
71#define DISABLE_METADATA_DYNAMIC_FPS_PROP DISPLAY_PROP("disable_metadata_dynamic_fps")
Uday Kiran Pichika5e656b22018-05-15 18:48:24 +053072#define DISABLE_SKIP_VALIDATE_PROP DISPLAY_PROP("disable_skip_validate")
Uday Kiran Pichika5e656b22018-05-15 18:48:24 +053073#define DISABLE_DESTINATION_SCALER_PROP DISPLAY_PROP("disable_dest_scaler")
Uday Kiran Pichika5e656b22018-05-15 18:48:24 +053074#define DISABLE_SECURE_INLINE_ROTATOR_PROP DISPLAY_PROP("disable_secure_inline_rotator")
75#define DISABLE_MULTIRECT_PROP DISPLAY_PROP("disable_multirect")
76#define DISABLE_UBWC_FF_VOTING_PROP DISPLAY_PROP("disable_ubwc_ff_voting")
77#define DISABLE_INLINE_ROTATOR_PROP DISPLAY_PROP("disable_inline_rotator")
Alex Sarraf4ec5f612018-10-29 14:02:45 -070078#define DISABLE_OFFLINE_ROTATOR_PROP DISPLAY_PROP("disable_offline_rotator")
Uday Kiran Pichika5e656b22018-05-15 18:48:24 +053079#define DISABLE_FB_CROPPING_PROP DISPLAY_PROP("disable_fb_cropping")
80#define PRIORITIZE_CACHE_COMPOSITION_PROP DISPLAY_PROP("prioritize_cache_comp")
81#define DISABLE_HW_RECOVERY_PROP DISPLAY_PROP("disable_hw_recovery")
Varun Arora75c3d292018-06-08 17:19:35 -070082#define DISABLE_HW_RECOVERY_DUMP_PROP DISPLAY_PROP("disable_hw_recovery_dump")
Uday Kiran Pichika5e656b22018-05-15 18:48:24 +053083#define DISABLE_SRC_TONEMAP_PROP DISPLAY_PROP("disable_src_tonemap")
84#define ENABLE_NULL_DISPLAY_PROP DISPLAY_PROP("enable_null_display")
85#define DISABLE_EXCL_RECT_PROP DISPLAY_PROP("disable_excl_rect")
86#define ENABLE_PIPE_PRIORITY_PROP DISPLAY_PROP("enable_pipe_priority")
Namit Solanki4d3fd512018-05-22 12:17:40 +053087#define DISABLE_EXCl_RECT_PARTIAL_FB DISPLAY_PROP("disable_excl_rect_partial_fb")
Sushil Chauhanabc5b272018-06-20 16:18:13 -070088#define DISABLE_FBID_CACHE DISPLAY_PROP("disable_fbid_cache")
Mathew Joseph Karimpanalabe3b3d2018-11-27 17:25:40 +053089#define DISABLE_HOTPLUG_BWCHECK DISPLAY_PROP("disable_hotplug_bwcheck")
Pullakavi Srinivas2fbff8d2019-04-22 18:32:52 -070090#define DISABLE_MASK_LAYER_HINT DISPLAY_PROP("disable_mask_layer_hint")
Uday Kiran Pichika5e656b22018-05-15 18:48:24 +053091#define DISABLE_HDR_LUT_GEN DISPLAY_PROP("disable_hdr_lut_gen")
Uday Kiran Pichika2febe6f2018-05-22 19:23:32 +053092#define DISABLE_HDR DISPLAY_PROP("hwc_disable_hdr")
Uday Kiran Pichika5e656b22018-05-15 18:48:24 +053093#define QDCM_PCC_TRANS_PROP DISPLAY_PROP("qdcm.pcc_for_trans")
94#define QDCM_DIAGONAL_MATRIXMODE_PROP DISPLAY_PROP("qdcm.diagonal_matrix_mode")
Qing Huang9a54e872018-06-06 20:32:17 +080095#define QDCM_MODE_COMBINE_PROP DISPLAY_PROP("qdcm.mode_combine")
Ramkumar Radhakrishnan1ecda222018-05-11 17:25:15 -070096#define PREFER_MULTIRECT_PROP DISPLAY_PROP("prefer_multirect")
Pullakavi Srinivas915ed092018-10-08 12:00:57 +053097#define DROP_SKEWED_VSYNC DISPLAY_PROP("drop_skewed_vsync")
Sushil Chauhan7bd20662018-08-20 17:51:32 -070098#define DISABLE_FAST_PATH DISPLAY_PROP("disable_fast_path")
Alex Sarrafddd2d152019-10-08 16:58:26 -070099#define DISABLE_SYSTEM_LOAD_CHECK DISPLAY_PROP("disable_system_load_check")
Gousemoodhin Nadaf7e567682018-11-05 16:07:23 +0530100// Disable microidle condition
101#define DISABLE_SINGLE_LM_SPLIT_PROP DISPLAY_PROP("disable_single_lm_split")
Xu Yang27aaea32018-12-19 15:53:56 +0800102// Enable posted start dynamic
103#define ENABLE_POSTED_START_DYN_PROP DISPLAY_PROP("enable_posted_start_dyn")
Qing Huang1bd0d662019-06-18 16:39:08 +0800104#define ENABLE_OPTIMIZE_REFRESH DISPLAY_PROP("enable_optimize_refresh")
Pullakavi Srinivasad8bd012019-04-22 17:04:51 +0530105#define DISABLE_PARALLEL_CACHE DISPLAY_PROP("disable_parallel_cache")
Pullakavi Srinivas1ae4acb2019-11-18 19:33:45 +0530106#define DISABLE_LAYER_STITCH DISPLAY_PROP("disable_layer_stitch")
Sushil Chauhan7f298f82019-05-15 18:38:58 -0700107// Disable 3d tonemap support for UI layers
108#define DISABLE_UI_3D_TONEMAP DISPLAY_PROP("disable_ui_3d_tonemap")
Qing Huang1bd0d662019-06-18 16:39:08 +0800109#define QDCM_DISABLE_FACTORY_MODE_PROP DISPLAY_PROP("qdcm.disable_factory_mode")
Srinivas Pullakavi3c4337f2019-07-03 11:24:31 +0530110#define ENABLE_ASYNC_POWERMODE DISPLAY_PROP("enable_async_powermode")
Qing Huangf683e3b2019-09-23 15:27:46 +0800111#define ENABLE_GPU_TONEMAPPER_PROP DISPLAY_PROP("enable_gpu_tonemapper")
Padmanabhan Komanduru57278ca2019-08-21 14:34:51 +0530112#define ENABLE_FORCE_SPLIT DISPLAY_PROP("enable_force_split")
Pullakavi Srinivas17495f12019-09-16 20:25:20 +0530113#define DISABLE_GPU_COLOR_CONVERT DISPLAY_PROP("disable_gpu_color_convert")
Padmanabhan Komanduruf5b7f992019-07-08 13:33:44 +0530114#define ENABLE_ASYNC_VDS_CREATION DISPLAY_PROP("enable_async_vds_creation")
Ramakant Singha41ffd22019-12-16 17:49:50 +0530115// MMNOC efficiency factor for Camera and Non-Camera cases
116#define NORMAL_NOC_EFFICIENCY_FACTOR DISPLAY_PROP("normal_noc_efficiency_factor")
117#define CAMERA_NOC_EFFICIENCY_FACTOR DISPLAY_PROP("camera_noc_efficiency_factor")
Lakshmi Narayana Kalavalab4d1b5c2019-12-19 19:37:46 -0800118#define ENABLE_HISTOGRAM_INTR DISPLAY_PROP("enable_hist_intr")
Sushil Chauhan9d728192019-06-14 18:00:31 -0700119#define DEFER_FPS_FRAME_COUNT DISPLAY_PROP("defer_fps_frame_count")
Padmanabhan Komandurub5ff0fb2020-02-12 18:08:04 +0530120#define ENABLE_BW_LIMITS DISPLAY_PROP("enable_bw_limits")
Rajavenu Kyathame7338c12019-07-15 14:34:38 +0530121#define DISABLE_ROTATOR_PRE_DOWNSCALER_PROP DISPLAY_PROP("disable_pre_downscaler")
122#define DISABLE_INLINE_ROTATOR_UI_PROP DISPLAY_PROP("disable_inline_rotator_ui")
Padmanabhan Komandurufa213652020-04-24 15:38:15 +0530123#define ENABLE_POMS_DURING_DOZE DISPLAY_PROP("enable_poms_during_doze")
Uday Kiran Pichika2febe6f2018-05-22 19:23:32 +0530124
Ramkumar Radhakrishnan5e9fb262019-06-10 11:28:03 -0700125// Add all vendor.display properties above
126
127#define DISABLE_UBWC_PROP GRALLOC_PROP("disable_ubwc")
128
129// Add all vendor.gralloc.properties above
130
131#define QDCM_DISABLE_TIMEOUT_PROP PERSIST_DISPLAY_PROP("qdcm.disable_timeout")
132
133// Add all persist.vendor.display.properties above
134
135#define ZERO_SWAP_INTERVAL "vendor.debug.egl.swapinterval"
Rajavenu Kyathamb6292fb2018-06-08 14:29:19 +0530136#define WINDOW_RECT_PROP DISPLAY_PROP("window_rect")
Rajavenu Kyathamc2d14a82020-01-13 14:30:50 +0530137#define DISABLE_IDLE_TIME_HDR DISPLAY_PROP("disable_idle_time_hdr")
Rajavenu Kyatham801259b2020-03-16 16:28:08 +0530138#define DISABLE_IDLE_TIME_VIDEO DISPLAY_PROP("disable_idle_time_video")
Ramkumar Radhakrishnan5e9fb262019-06-10 11:28:03 -0700139// Add all other.properties above
140// End of property
Uday Kiran Pichika5e656b22018-05-15 18:48:24 +0530141#endif // __DISPLAY_PROPERTIES_H__