Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit dae9acbb authored by Linux Build Service Account's avatar Linux Build Service Account Committed by Gerrit - the friendly Code Review server
Browse files

Merge "DRM: SDE: Independent control of left/right global PA"

parents 947f0ec3 daf3fdb4
Loading
Loading
Loading
Loading
+17 −0
Original line number Diff line number Diff line
@@ -444,6 +444,7 @@ static void sde_cp_crtc_setfeature(struct sde_cp_node *prop_node,
	struct sde_hw_cp_cfg hw_cfg;
	struct sde_hw_mixer *hw_lm;
	struct sde_hw_dspp *hw_dspp;
	struct drm_msm_pa_hsic *hsic_cfg;
	u32 num_mixers = sde_crtc->num_mixers;
	int i = 0;
	bool feature_enabled = false;
@@ -489,6 +490,22 @@ static void sde_cp_crtc_setfeature(struct sde_cp_node *prop_node,
				ret = -EINVAL;
				continue;
			}
			if (hw_cfg.payload && (hw_cfg.len ==
				sizeof(struct drm_msm_pa_hsic))) {
				/* hw_cfg is valid, check for feature flag */
				hsic_cfg = (struct drm_msm_pa_hsic *)
						hw_cfg.payload;
				if ((hsic_cfg->flags &
					PA_HSIC_LEFT_DISPLAY_ONLY) && (i > 0)) {
					/* skip right side programming */
					continue;
				} else if ((hsic_cfg->flags &
					PA_HSIC_RIGHT_DISPLAY_ONLY)
					&& (i == 0)) {
					/* skip left side programming */
					continue;
				}
			}
			hw_dspp->ops.setup_pa_hsic(hw_dspp, &hw_cfg);
			break;
		case SDE_CP_CRTC_DSPP_MEMCOLOR:
+2 −0
Original line number Diff line number Diff line
@@ -56,6 +56,8 @@ struct drm_msm_pa_vlut {
#define PA_HSIC_SAT_ENABLE (1 << 1)
#define PA_HSIC_VAL_ENABLE (1 << 2)
#define PA_HSIC_CONT_ENABLE (1 << 3)
#define PA_HSIC_LEFT_DISPLAY_ONLY (1 << 4)
#define PA_HSIC_RIGHT_DISPLAY_ONLY (1 << 5)
/**
 * struct drm_msm_pa_hsic - pa hsic feature structure
 * @flags: flags for the feature customization, values can be: