Commit f275e875 authored by Alex Deucher's avatar Alex Deucher
Browse files

drm/amdgpu/display: handle aux backlight in backlight_get_brightness



Need to fetch it via aux.

Reviewed-by: default avatarNicholas Kazlauskas <nicholas.kazlauskas@amd.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
parent 10ba4d0c
Loading
Loading
Loading
Loading
+20 −4
Original line number Diff line number Diff line
@@ -3343,11 +3343,27 @@ static int amdgpu_dm_backlight_update_status(struct backlight_device *bd)
static int amdgpu_dm_backlight_get_brightness(struct backlight_device *bd)
{
	struct amdgpu_display_manager *dm = bl_get_data(bd);
	struct amdgpu_dm_backlight_caps caps;

	amdgpu_dm_update_backlight_caps(dm);
	caps = dm->backlight_caps;

	if (caps.aux_support) {
		struct dc_link *link = (struct dc_link *)dm->backlight_link;
		u32 avg, peak;
		bool rc;

		rc = dc_link_get_backlight_level_nits(link, &avg, &peak);
		if (!rc)
			return bd->props.brightness;
		return convert_brightness_to_user(&caps, avg);
	} else {
		int ret = dc_link_get_backlight_level(dm->backlight_link);

		if (ret == DC_ERROR_UNEXPECTED)
			return bd->props.brightness;
	return convert_brightness_to_user(&dm->backlight_caps, ret);
		return convert_brightness_to_user(&caps, ret);
	}
}

static const struct backlight_ops amdgpu_dm_backlight_ops = {