[PATCH] drm/amd: Drop abm_level property

Harry Wentland harry.wentland at amd.com
Fri Feb 16 21:20:05 UTC 2024



On 2024-02-16 10:33, Mario Limonciello wrote:
> This vendor specific property has never been used by userspace
> software and conflicts with the panel_power_savings sysfs file.
> That is a compositor and user could fight over the same data.
> 
> Fixes: f97e4303da16 ("drm/amd/display: add panel_power_savings sysfs entry to eDP connectors")
> Suggested-by: Harry Wentland <Harry.Wentland at amd.com>
> Signed-off-by: Mario Limonciello <mario.limonciello at amd.com>
> --
> Cc: Hamza Mahfooz <Hamza.Mahfooz at amd.com>
> Cc: Sun peng (Leo) Li <Sunpeng.Li at amd.com>

Reviewed-by: Harry Wentland <harry.wentland at amd.com>

Harry

> ---
>  drivers/gpu/drm/amd/amdgpu/amdgpu_display.c       |  8 --------
>  drivers/gpu/drm/amd/amdgpu/amdgpu_mode.h          |  2 --
>  drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 14 --------------
>  3 files changed, 24 deletions(-)
> 
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_display.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_display.c
> index b8fbe97efe1d..3ecc7ef95172 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_display.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_display.c
> @@ -1350,14 +1350,6 @@ int amdgpu_display_modeset_create_props(struct amdgpu_device *adev)
>  					 "dither",
>  					 amdgpu_dither_enum_list, sz);
>  
> -	if (adev->dc_enabled) {
> -		adev->mode_info.abm_level_property =
> -			drm_property_create_range(adev_to_drm(adev), 0,
> -						  "abm level", 0, 4);
> -		if (!adev->mode_info.abm_level_property)
> -			return -ENOMEM;
> -	}
> -
>  	return 0;
>  }
>  
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_mode.h b/drivers/gpu/drm/amd/amdgpu/amdgpu_mode.h
> index 2e4911050cc5..1fe21a70ddd0 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_mode.h
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_mode.h
> @@ -324,8 +324,6 @@ struct amdgpu_mode_info {
>  	struct drm_property *audio_property;
>  	/* FMT dithering */
>  	struct drm_property *dither_property;
> -	/* Adaptive Backlight Modulation (power feature) */
> -	struct drm_property *abm_level_property;
>  	/* hardcoded DFP edid from BIOS */
>  	struct edid *bios_hardcoded_edid;
>  	int bios_hardcoded_edid_size;
> 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 b9ac3d2f8029..e3b32ffba85a 100644
> --- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
> +++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
> @@ -6388,9 +6388,6 @@ int amdgpu_dm_connector_atomic_set_property(struct drm_connector *connector,
>  	} else if (property == adev->mode_info.underscan_property) {
>  		dm_new_state->underscan_enable = val;
>  		ret = 0;
> -	} else if (property == adev->mode_info.abm_level_property) {
> -		dm_new_state->abm_level = val ?: ABM_LEVEL_IMMEDIATE_DISABLE;
> -		ret = 0;
>  	}
>  
>  	return ret;
> @@ -6433,10 +6430,6 @@ int amdgpu_dm_connector_atomic_get_property(struct drm_connector *connector,
>  	} else if (property == adev->mode_info.underscan_property) {
>  		*val = dm_state->underscan_enable;
>  		ret = 0;
> -	} else if (property == adev->mode_info.abm_level_property) {
> -		*val = (dm_state->abm_level != ABM_LEVEL_IMMEDIATE_DISABLE) ?
> -			dm_state->abm_level : 0;
> -		ret = 0;
>  	}
>  
>  	return ret;
> @@ -7652,13 +7645,6 @@ void amdgpu_dm_connector_init_helper(struct amdgpu_display_manager *dm,
>  	aconnector->base.state->max_bpc = 16;
>  	aconnector->base.state->max_requested_bpc = aconnector->base.state->max_bpc;
>  
> -	if (connector_type == DRM_MODE_CONNECTOR_eDP &&
> -	    (dc_is_dmcu_initialized(adev->dm.dc) ||
> -	     adev->dm.dc->ctx->dmub_srv) && amdgpu_dm_abm_level < 0) {
> -		drm_object_attach_property(&aconnector->base.base,
> -				adev->mode_info.abm_level_property, 0);
> -	}
> -
>  	if (connector_type == DRM_MODE_CONNECTOR_HDMIA) {
>  		/* Content Type is currently only implemented for HDMI. */
>  		drm_connector_attach_content_type_property(&aconnector->base);



More information about the amd-gfx mailing list