This is useful if the minimum backlight as reported by machines VBT
does not match the user expectations.

As an example, the minimum backlight brightness on the Framework 13
matte panel is too high.

Signed-off-by: Thomas Weißschuh <li...@weissschuh.net>
---
 drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c 
b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
index 7e7929f24ae4..ae15465cacfc 100644
--- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
+++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
@@ -3330,6 +3330,7 @@ static void update_connector_ext_caps(struct 
amdgpu_dm_connector *aconnector)
        struct drm_connector *conn_base;
        struct amdgpu_device *adev;
        struct drm_luminance_range_info *luminance_range;
+       int min_input_signal_override;
 
        if (aconnector->bl_idx == -1 ||
            aconnector->dc_link->connector_signal != SIGNAL_TYPE_EDP)
@@ -3364,6 +3365,11 @@ static void update_connector_ext_caps(struct 
amdgpu_dm_connector *aconnector)
                caps->aux_min_input_signal = 0;
                caps->aux_max_input_signal = 512;
        }
+
+       min_input_signal_override = 
drm_connector_get_cmdline_min_brightness_override(conn_base);
+       if (min_input_signal_override >= 0)
+               caps->min_input_signal = min_input_signal_override;
+
 }
 
 void amdgpu_dm_update_connector_after_detect(

-- 
2.46.0

Reply via email to