Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

drm/amd/display: Add new command to disable replay timing resync

[WHY & HOW]
Add new command to disable replay timing resync

Acked-by: Alex Hung <alex.hung@amd.com>
Signed-off-by: Anthony Koo <anthony.koo@amd.com>
Tested-by: Daniel Wheeler <daniel.wheeler@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>

authored by

Anthony Koo and committed by
Alex Deucher
ed4ae8f7 c29085d2

+41
+41
drivers/gpu/drm/amd/display/dmub/inc/dmub_cmd.h
··· 2876 2876 * Set power opt and coasting vtotal. 2877 2877 */ 2878 2878 DMUB_CMD__REPLAY_SET_POWER_OPT_AND_COASTING_VTOTAL = 4, 2879 + /** 2880 + * Set disabled iiming sync. 2881 + */ 2882 + DMUB_CMD__REPLAY_SET_TIMING_SYNC_SUPPORTED = 5, 2879 2883 }; 2880 2884 2881 2885 /** ··· 3043 3039 }; 3044 3040 3045 3041 /** 3042 + * Data passed from driver to FW in a DMUB_CMD__REPLAY_SET_TIMING_SYNC_SUPPORTED command. 3043 + */ 3044 + struct dmub_cmd_replay_set_timing_sync_data { 3045 + /** 3046 + * Panel Instance. 3047 + * Panel isntance to identify which replay_state to use 3048 + * Currently the support is only for 0 or 1 3049 + */ 3050 + uint8_t panel_inst; 3051 + 3052 + /** 3053 + * Explicit padding to 4 byte boundary. 3054 + */ 3055 + uint8_t pad[3]; 3056 + /** 3057 + * REPLAY set_timing_sync 3058 + */ 3059 + bool timing_sync_supported; 3060 + }; 3061 + 3062 + /** 3046 3063 * Definition of a DMUB_CMD__SET_REPLAY_POWER_OPT command. 3047 3064 */ 3048 3065 struct dmub_rb_cmd_replay_set_power_opt { ··· 3127 3102 * Definition of a DMUB_CMD__REPLAY_SET_COASTING_VTOTAL command. 3128 3103 */ 3129 3104 struct dmub_cmd_replay_set_coasting_vtotal_data replay_set_coasting_vtotal_data; 3105 + }; 3106 + 3107 + /** 3108 + * Definition of a DMUB_CMD__REPLAY_SET_TIMING_SYNC_SUPPORTED command. 3109 + */ 3110 + struct dmub_rb_cmd_replay_set_timing_sync { 3111 + /** 3112 + * Command header. 3113 + */ 3114 + struct dmub_cmd_header header; 3115 + /** 3116 + * Definition of DMUB_CMD__REPLAY_SET_TIMING_SYNC_SUPPORTED command. 3117 + */ 3118 + struct dmub_cmd_replay_set_timing_sync_data replay_set_timing_sync_data; 3130 3119 }; 3131 3120 3132 3121 /** ··· 4276 4237 * Definition of a DMUB_CMD__REPLAY_SET_POWER_OPT_AND_COASTING_VTOTAL command. 4277 4238 */ 4278 4239 struct dmub_rb_cmd_replay_set_power_opt_and_coasting_vtotal replay_set_power_opt_and_coasting_vtotal; 4240 + 4241 + struct dmub_rb_cmd_replay_set_timing_sync replay_set_timing_sync; 4279 4242 }; 4280 4243 4281 4244 /**