![Daniel Vetter](/assets/img/avatar_default.png)
This implements intel overlay support for kms via a device-specific ioctl. Thomas Hellstrom brought up the idea of a general ioctl (on dri-devel). We've reached the conclusion that such an infrastructure only makes sense when multiple kms overlay implementations exists, which atm don't (and it doesn't look like this is gonna change). Open issues: - Runs in sync with the gpu, i.e. unnecessary waiting. I've decided to wait on this because the hw tends to hang when changing something in this area. I left some dummy functions as infrastructure. - polyphase filtering uses a static table. - uses uninterruptible sleeps. Unfortunately the alternatives may unnecessarily wedged the hw if/when we timeout too early (and userspace only overloaded the batch buffers with stuff worth a few secs of gpu time). Changes since v1: - fix off-by-one misconception on my side. This fixes fullscreen playback. Changes since v2: - add underrun detection as spec'ed for i965. - flush caches properly, fixing visual corruptions. Changes since v4: - fix up cache flushing of overlay memory regs. - killed require_pipe_a logic - it hangs the chip. Tested-By: diego.abelenda@gmail.com (on a 865G) Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch> [anholt: Resolved against the MADVISE ioctl going in before this one] Signed-off-by: Eric Anholt <eric@anholt.net>
37 lines
817 B
Makefile
37 lines
817 B
Makefile
#
|
|
# Makefile for the drm device driver. This driver provides support for the
|
|
# Direct Rendering Infrastructure (DRI) in XFree86 4.1.0 and higher.
|
|
|
|
ccflags-y := -Iinclude/drm
|
|
i915-y := i915_drv.o i915_dma.o i915_irq.o i915_mem.o \
|
|
i915_debugfs.o \
|
|
i915_suspend.o \
|
|
i915_gem.o \
|
|
i915_gem_debug.o \
|
|
i915_gem_tiling.o \
|
|
i915_trace_points.o \
|
|
intel_display.o \
|
|
intel_crt.o \
|
|
intel_lvds.o \
|
|
intel_bios.o \
|
|
intel_dp.o \
|
|
intel_dp_i2c.o \
|
|
intel_hdmi.o \
|
|
intel_sdvo.o \
|
|
intel_modes.o \
|
|
intel_i2c.o \
|
|
intel_fb.o \
|
|
intel_tv.o \
|
|
intel_dvo.o \
|
|
intel_overlay.o \
|
|
dvo_ch7xxx.o \
|
|
dvo_ch7017.o \
|
|
dvo_ivch.o \
|
|
dvo_tfp410.o \
|
|
dvo_sil164.o
|
|
|
|
i915-$(CONFIG_ACPI) += i915_opregion.o
|
|
i915-$(CONFIG_COMPAT) += i915_ioc32.o
|
|
|
|
obj-$(CONFIG_DRM_I915) += i915.o
|