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

Commit 7983117f authored by Jesse Barnes's avatar Jesse Barnes Committed by Daniel Vetter
Browse files

drm/i915: enable display messages to GT on ValleyView



Enable the on-chip messaging between the display engine and the GT.

v2: use bit definitions for DPFLIPSTAT reg

Signed-off-by: default avatarJesse Barnes <jbarnes@virtuousgeek.org>
Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
parent 31acc7f5
Loading
Loading
Loading
Loading
+2 −2
Original line number Original line Diff line number Diff line
@@ -2653,13 +2653,13 @@
#define PIPESTAT(pipe) _PIPE(pipe, _PIPEASTAT, _PIPEBSTAT)
#define PIPESTAT(pipe) _PIPE(pipe, _PIPEASTAT, _PIPEBSTAT)


#define VLV_DPFLIPSTAT				0x70028
#define VLV_DPFLIPSTAT				0x70028
#define   PIPEB_LINE_COMPARE_STATUS		(1<<29)
#define   PIPEB_LINE_COMPARE_INT_EN		(1<<29)
#define   PIPEB_HLINE_INT_EN			(1<<28)
#define   PIPEB_HLINE_INT_EN			(1<<28)
#define   PIPEB_VBLANK_INT_EN			(1<<27)
#define   PIPEB_VBLANK_INT_EN			(1<<27)
#define   SPRITED_FLIPDONE_INT_EN		(1<<26)
#define   SPRITED_FLIPDONE_INT_EN		(1<<26)
#define   SPRITEC_FLIPDONE_INT_EN		(1<<25)
#define   SPRITEC_FLIPDONE_INT_EN		(1<<25)
#define   PLANEB_FLIPDONE_INT_EN		(1<<24)
#define   PLANEB_FLIPDONE_INT_EN		(1<<24)
#define   PIPEA_LINE_COMPARE_STATUS		(1<<21)
#define   PIPEA_LINE_COMPARE_INT_EN		(1<<21)
#define   PIPEA_HLINE_INT_EN			(1<<20)
#define   PIPEA_HLINE_INT_EN			(1<<20)
#define   PIPEA_VBLANK_INT_EN			(1<<19)
#define   PIPEA_VBLANK_INT_EN			(1<<19)
#define   SPRITEB_FLIPDONE_INT_EN		(1<<18)
#define   SPRITEB_FLIPDONE_INT_EN		(1<<18)
+13 −0
Original line number Original line Diff line number Diff line
@@ -3528,6 +3528,19 @@ static void valleyview_init_clock_gating(struct drm_device *dev)


	I915_WRITE(CACHE_MODE_1,
	I915_WRITE(CACHE_MODE_1,
		   _MASKED_BIT_ENABLE(PIXEL_SUBSPAN_COLLECT_OPT_DISABLE));
		   _MASKED_BIT_ENABLE(PIXEL_SUBSPAN_COLLECT_OPT_DISABLE));

	/*
	 * On ValleyView, the GUnit needs to signal the GT
	 * when flip and other events complete.  So enable
	 * all the GUnit->GT interrupts here
	 */
	I915_WRITE(VLV_DPFLIPSTAT, PIPEB_LINE_COMPARE_INT_EN |
		   PIPEB_HLINE_INT_EN | PIPEB_VBLANK_INT_EN |
		   SPRITED_FLIPDONE_INT_EN | SPRITEC_FLIPDONE_INT_EN |
		   PLANEB_FLIPDONE_INT_EN | PIPEA_LINE_COMPARE_INT_EN |
		   PIPEA_HLINE_INT_EN | PIPEA_VBLANK_INT_EN |
		   SPRITEB_FLIPDONE_INT_EN | SPRITEA_FLIPDONE_INT_EN |
		   PLANEA_FLIPDONE_INT_EN);
}
}


static void g4x_init_clock_gating(struct drm_device *dev)
static void g4x_init_clock_gating(struct drm_device *dev)