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

Commit 4a87d65d authored by Jesse Barnes's avatar Jesse Barnes Committed by Daniel Vetter
Browse files

drm/i915: add HDMI and DP port enumeration on ValleyView



ValleyView is similar to IbexPeak here, but with different register
offsets.

v2: use SDVOB instead ov VLV_HDMIB (Daniel)
    drop unnecessary eDP check in DP_C init (Daniel)

eDP support will be coming later from Shobit.

Signed-off-by: default avatarJesse Barnes <jbarnes@virtuousgeek.org>
Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
parent 7d2c24e8
Loading
Loading
Loading
Loading
+0 −1
Original line number Diff line number Diff line
@@ -3865,7 +3865,6 @@
#define  ADPA_CRT_HOTPLUG_FORCE_TRIGGER (1<<16)

/* or SDVOB */
#define VLV_HDMIB 0x61140
#define HDMIB   0xe1140
#define  PORT_ENABLE    (1 << 31)
#define  TRANSCODER(pipe)       ((pipe) << 30)
+17 −0
Original line number Diff line number Diff line
@@ -6768,7 +6768,24 @@ static void intel_setup_outputs(struct drm_device *dev)

		if (!dpd_is_edp && (I915_READ(PCH_DP_D) & DP_DETECTED))
			intel_dp_init(dev, PCH_DP_D);
	} else if (IS_VALLEYVIEW(dev)) {
		int found;

		if (I915_READ(SDVOB) & PORT_DETECTED) {
			/* SDVOB multiplex with HDMIB */
			found = intel_sdvo_init(dev, SDVOB, true);
			if (!found)
				intel_hdmi_init(dev, SDVOB);
			if (!found && (I915_READ(DP_B) & DP_DETECTED))
				intel_dp_init(dev, DP_B);
		}

		if (I915_READ(SDVOC) & PORT_DETECTED)
			intel_hdmi_init(dev, SDVOC);

		/* Shares lanes with HDMI on SDVOC */
		if (I915_READ(DP_C) & DP_DETECTED)
			intel_dp_init(dev, DP_C);
	} else if (SUPPORTS_DIGITAL_OUTPUTS(dev)) {
		bool found = false;