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

Commit 6b93e9c8 authored by Jani Nikula's avatar Jani Nikula
Browse files

drm/i915/bxt: fix dsi hw state pipe readout

parent 1dcec2f3
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -8144,6 +8144,7 @@ enum skl_disp_power_wells {
#define  READ_REQUEST_PRIORITY_HIGH			(3 << 3)
#define  RGB_FLIP_TO_BGR				(1 << 2)

#define  BXT_PIPE_SELECT_SHIFT				7
#define  BXT_PIPE_SELECT_MASK				(7 << 7)
#define  BXT_PIPE_SELECT(pipe)				((pipe) << 7)

+13 −1
Original line number Diff line number Diff line
@@ -700,7 +700,19 @@ static bool intel_dsi_get_hw_state(struct intel_encoder *encoder,
		if (!(I915_READ(MIPI_DEVICE_READY(port)) & DEVICE_READY))
			continue;

		if (IS_BROXTON(dev_priv)) {
			u32 tmp = I915_READ(MIPI_CTRL(port));
			tmp &= BXT_PIPE_SELECT_MASK;
			tmp >>= BXT_PIPE_SELECT_SHIFT;

			if (WARN_ON(tmp > PIPE_C))
				continue;

			*pipe = tmp;
		} else {
			*pipe = port == PORT_A ? PIPE_A : PIPE_B;
		}

		active = true;
		break;
	}