Commit 2af612ad authored by Suraj Kandpal's avatar Suraj Kandpal
Browse files

drm/dp: Introduce new member in drm_backlight_info



Introduce luminance_set flag which indicates if we can manipulate
backlight using luminance value or not which is only possible
after eDP v1.5.

Signed-off-by: default avatarSuraj Kandpal <suraj.kandpal@intel.com>
Reviewed-by: default avatarArun R Murthy <arun.r.murthy@intel.com>
Link: https://lore.kernel.org/r/20250620063445.3603086-2-suraj.kandpal@intel.com
parent 026a60e3
Loading
Loading
Loading
Loading
+6 −2
Original line number Diff line number Diff line
@@ -4261,11 +4261,15 @@ drm_edp_backlight_init(struct drm_dp_aux *aux, struct drm_edp_backlight_info *bl
		bl->aux_set = true;
	if (edp_dpcd[2] & DP_EDP_BACKLIGHT_BRIGHTNESS_BYTE_COUNT)
		bl->lsb_reg_used = true;
	if ((edp_dpcd[0] & DP_EDP_15) && edp_dpcd[3] &
	    (DP_EDP_PANEL_LUMINANCE_CONTROL_CAPABLE))
		bl->luminance_set = true;

	/* Sanity check caps */
	if (!bl->aux_set && !(edp_dpcd[2] & DP_EDP_BACKLIGHT_BRIGHTNESS_PWM_PIN_CAP)) {
	if (!bl->aux_set && !(edp_dpcd[2] & DP_EDP_BACKLIGHT_BRIGHTNESS_PWM_PIN_CAP) &&
	    !bl->luminance_set) {
		drm_dbg_kms(aux->drm_dev,
			    "%s: Panel supports neither AUX or PWM brightness control? Aborting\n",
			    "%s: Panel does not support AUX, PWM or luminance-based brightness control. Aborting\n",
			    aux->name);
		return -EINVAL;
	}
+1 −0
Original line number Diff line number Diff line
@@ -849,6 +849,7 @@ struct drm_edp_backlight_info {
	bool lsb_reg_used : 1;
	bool aux_enable : 1;
	bool aux_set : 1;
	bool luminance_set : 1;
};

int