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

Commit 7d5ab300 authored by Alex Deucher's avatar Alex Deucher
Browse files

drm/radeon: only apply hdmi bpc pll flags when encoder mode is hdmi



May fix display issues with non-HDMI displays.

Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
Cc: stable@vger.kernel.org
parent 64252835
Loading
Loading
Loading
Loading
+26 −22
Original line number Diff line number Diff line
@@ -864,6 +864,7 @@ static void atombios_crtc_program_pll(struct drm_crtc *crtc,
			args.v5.ucMiscInfo = 0; /* HDMI depth, etc. */
			if (ss_enabled && (ss->type & ATOM_EXTERNAL_SS_MASK))
				args.v5.ucMiscInfo |= PIXEL_CLOCK_V5_MISC_REF_DIV_SRC;
			if (encoder_mode == ATOM_ENCODER_MODE_HDMI) {
				switch (bpc) {
				case 8:
				default:
@@ -873,6 +874,7 @@ static void atombios_crtc_program_pll(struct drm_crtc *crtc,
					args.v5.ucMiscInfo |= PIXEL_CLOCK_V5_MISC_HDMI_30BPP;
					break;
				}
			}
			args.v5.ucTransmitterID = encoder_id;
			args.v5.ucEncoderMode = encoder_mode;
			args.v5.ucPpll = pll_id;
@@ -886,6 +888,7 @@ static void atombios_crtc_program_pll(struct drm_crtc *crtc,
			args.v6.ucMiscInfo = 0; /* HDMI depth, etc. */
			if (ss_enabled && (ss->type & ATOM_EXTERNAL_SS_MASK))
				args.v6.ucMiscInfo |= PIXEL_CLOCK_V6_MISC_REF_DIV_SRC;
			if (encoder_mode == ATOM_ENCODER_MODE_HDMI) {
				switch (bpc) {
				case 8:
				default:
@@ -901,6 +904,7 @@ static void atombios_crtc_program_pll(struct drm_crtc *crtc,
					args.v6.ucMiscInfo |= PIXEL_CLOCK_V6_MISC_HDMI_48BPP;
					break;
				}
			}
			args.v6.ucTransmitterID = encoder_id;
			args.v6.ucEncoderMode = encoder_mode;
			args.v6.ucPpll = pll_id;