On Thu, 2019-07-18 at 17:50 +0300, Ville Syrjala wrote:
From: Ville Syrjälä ville.syrjala@linux.intel.com
Pull the code for computing the limited color range setting into a small helper. We'll add a bit more to it later.
Signed-off-by: Ville Syrjälä ville.syrjala@linux.intel.com
drivers/gpu/drm/i915/display/intel_hdmi.c | 30 +++++++++++++++----
1 file changed, 20 insertions(+), 10 deletions(-)
diff --git a/drivers/gpu/drm/i915/display/intel_hdmi.c b/drivers/gpu/drm/i915/display/intel_hdmi.c index b8100cf21dd0..ca377ba3a15e 100644 --- a/drivers/gpu/drm/i915/display/intel_hdmi.c +++ b/drivers/gpu/drm/i915/display/intel_hdmi.c @@ -2297,6 +2297,24 @@ intel_hdmi_ycbcr420_config(struct drm_connector *connector, return true; }
+static bool intel_hdmi_limited_color_range(const struct intel_crtc_state *crtc_state,
const struct
drm_connector_state *conn_state) +{
- const struct intel_digital_connector_state *intel_conn_state =
to_intel_digital_connector_state(conn_state);
- const struct drm_display_mode *adjusted_mode =
&crtc_state->base.adjusted_mode;
- if (intel_conn_state->broadcast_rgb ==
INTEL_BROADCAST_RGB_AUTO) {
/* See CEA-861-E - 5.1 Default Encoding Parameters */
return crtc_state->has_hdmi_sink &&
drm_default_rgb_quant_range(adjusted_mode) ==
HDMI_QUANTIZATION_RANGE_LIMITED;
- } else {
return intel_conn_state->broadcast_rgb ==
INTEL_BROADCAST_RGB_LIMITED;
- }
+}
int intel_hdmi_compute_config(struct intel_encoder *encoder, struct intel_crtc_state *pipe_config, struct drm_connector_state *conn_state) @@ -2323,16 +2341,8 @@ int intel_hdmi_compute_config(struct intel_encoder *encoder, if (pipe_config->has_hdmi_sink) pipe_config->has_infoframe = true;
- if (intel_conn_state->broadcast_rgb ==
INTEL_BROADCAST_RGB_AUTO) {
/* See CEA-861-E - 5.1 Default Encoding Parameters */
pipe_config->limited_color_range =
pipe_config->has_hdmi_sink &&
drm_default_rgb_quant_range(adjusted_mode) ==
HDMI_QUANTIZATION_RANGE_LIMITED;
- } else {
pipe_config->limited_color_range =
intel_conn_state->broadcast_rgb ==
INTEL_BROADCAST_RGB_LIMITED;
- }
- pipe_config->limited_color_range =
intel_hdmi_limited_color_range(pipe_config,
conn_state);
if (adjusted_mode->flags & DRM_MODE_FLAG_DBLCLK) { pipe_config->pixel_multiplier = 2;
The changes look good to me. Reviewed-by: Gwan-gyeong Mun gwan-gyeong.mun@intel.com