From: Aric Cyr <aric....@amd.com>

This version brings along the following:

- DML2 fixes
- DP fixes
- DPMS fix
- HPD fixes
- Misc cleanup
- ODM fix
- Replay fix
- SPL fix

Reviewed-by: Leo Li <sunpeng...@amd.com>
Signed-off-by: Aric Cyr <aric....@amd.com>
Signed-off-by: Hamza Mahfooz <hamza.mahf...@amd.com>
---
 drivers/gpu/drm/amd/display/dc/dc.h           |  2 +-
 .../amd/display/dc/hwss/dcn31/dcn31_hwseq.c   |  3 +-
 .../gpu/drm/amd/display/dmub/inc/dmub_cmd.h   | 35 +++++++++++++++----
 3 files changed, 32 insertions(+), 8 deletions(-)

diff --git a/drivers/gpu/drm/amd/display/dc/dc.h 
b/drivers/gpu/drm/amd/display/dc/dc.h
index ad9ce3d0bfcf..e143fab00a86 100644
--- a/drivers/gpu/drm/amd/display/dc/dc.h
+++ b/drivers/gpu/drm/amd/display/dc/dc.h
@@ -55,7 +55,7 @@ struct aux_payload;
 struct set_config_cmd_payload;
 struct dmub_notification;
 
-#define DC_VER "3.2.308"
+#define DC_VER "3.2.309"
 
 #define MAX_SURFACES 3
 #define MAX_PLANES 6
diff --git a/drivers/gpu/drm/amd/display/dc/hwss/dcn31/dcn31_hwseq.c 
b/drivers/gpu/drm/amd/display/dc/hwss/dcn31/dcn31_hwseq.c
index 59b2e87317e3..03ba01f4ace1 100644
--- a/drivers/gpu/drm/amd/display/dc/hwss/dcn31/dcn31_hwseq.c
+++ b/drivers/gpu/drm/amd/display/dc/hwss/dcn31/dcn31_hwseq.c
@@ -653,7 +653,8 @@ static void dmub_abm_set_backlight(struct dc_context *dc,
        cmd.abm_set_backlight.header.sub_type = DMUB_CMD__ABM_SET_BACKLIGHT;
        cmd.abm_set_backlight.abm_set_backlight_data.frame_ramp = 
backlight_level_params->frame_ramp;
        cmd.abm_set_backlight.abm_set_backlight_data.backlight_user_level = 
backlight_level_params->backlight_pwm_u16_16;
-       cmd.abm_set_backlight.abm_set_backlight_data.backlight_control_type = 
backlight_level_params->control_type;
+       cmd.abm_set_backlight.abm_set_backlight_data.backlight_control_type =
+               (enum dmub_backlight_control_type) 
backlight_level_params->control_type;
        cmd.abm_set_backlight.abm_set_backlight_data.min_luminance = 
backlight_level_params->min_luminance;
        cmd.abm_set_backlight.abm_set_backlight_data.max_luminance = 
backlight_level_params->max_luminance;
        cmd.abm_set_backlight.abm_set_backlight_data.min_backlight_pwm = 
backlight_level_params->min_backlight_pwm;
diff --git a/drivers/gpu/drm/amd/display/dmub/inc/dmub_cmd.h 
b/drivers/gpu/drm/amd/display/dmub/inc/dmub_cmd.h
index a9b90fa00b88..b800a507d1e0 100644
--- a/drivers/gpu/drm/amd/display/dmub/inc/dmub_cmd.h
+++ b/drivers/gpu/drm/amd/display/dmub/inc/dmub_cmd.h
@@ -4426,6 +4426,24 @@ struct dmub_rb_cmd_abm_set_pipe {
        struct dmub_cmd_abm_set_pipe_data abm_set_pipe_data;
 };
 
+/**
+ * Type of backlight control method to be used by ABM module
+ */
+enum dmub_backlight_control_type {
+       /**
+        * PWM Backlight control
+        */
+       DMU_BACKLIGHT_CONTROL_PWM = 0,
+       /**
+        * VESA Aux-based backlight control
+        */
+       DMU_BACKLIGHT_CONTROL_VESA_AUX = 1,
+       /**
+        * AMD DPCD Aux-based backlight control
+        */
+       DMU_BACKLIGHT_CONTROL_AMD_AUX = 2,
+};
+
 /**
  * Data passed from driver to FW in a DMUB_CMD__ABM_SET_BACKLIGHT command.
  */
@@ -4452,18 +4470,23 @@ struct dmub_cmd_abm_set_backlight_data {
         */
        uint8_t panel_mask;
 
+       /**
+        * AUX HW Instance.
+        */
+       uint8_t aux_inst;
+
+       /**
+        * Explicit padding to 4 byte boundary.
+        */
+       uint8_t pad[1];
+
        /**
         * Backlight control type.
         * Value 0 is PWM backlight control.
         * Value 1 is VAUX backlight control.
         * Value 2 is AMD DPCD AUX backlight control.
         */
-       uint8_t backlight_control_type;
-
-       /**
-        * AUX HW instance.
-        */
-       uint8_t aux_inst;
+       enum dmub_backlight_control_type backlight_control_type;
 
        /**
         * Minimum luminance in nits.
-- 
2.46.1

Reply via email to