linux/drivers/gpu/drm/i915
Chris Wilson 6b9d89b436 drm: Add colouring to the range allocator
In order to support snoopable memory on non-LLC architectures (so that
we can bind vgem objects into the i915 GATT for example), we have to
avoid the prefetcher on the GPU from crossing memory domains and so
prevent allocation of a snoopable PTE immediately following an uncached
PTE. To do that, we need to extend the range allocator with support for
tracking and segregating different node colours.

This will be used by i915 to segregate memory domains within the GTT.

v2: Now with more drm_mm helpers and less driver interference.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Dave Airlie <airlied@redhat.com
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Ben Skeggs <bskeggs@redhat.com>
Cc: Jerome Glisse <jglisse@redhat.com>
Cc: Alex Deucher <alexander.deucher@amd.com>
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Signed-off-by: Dave Airlie <airlied@gmail.com>
2012-07-16 05:59:37 +10:00
..
dvo_ch7xxx.c
dvo_ch7017.c
dvo_ivch.c
dvo_sil164.c
dvo_tfp410.c
dvo.h
i915_debugfs.c
i915_dma.c drm/i915: get rid of dev_priv->info->has_pch_split 2012-07-05 09:56:05 +02:00
i915_drv.c drm/i915: don't trylock in the gpu reset code 2012-07-05 10:00:46 +02:00
i915_drv.h drm/i915: introduce for_each_encoder_on_crtc 2012-07-05 15:06:33 +02:00
i915_gem_context.c drm/i915: linuxify create_hw_context() 2012-06-29 19:43:59 +02:00
i915_gem_debug.c
i915_gem_dmabuf.c
i915_gem_evict.c drm: Add colouring to the range allocator 2012-07-16 05:59:37 +10:00
i915_gem_execbuffer.c
i915_gem_gtt.c
i915_gem_stolen.c
i915_gem_tiling.c
i915_gem.c drm: Add colouring to the range allocator 2012-07-16 05:59:37 +10:00
i915_ioc32.c
i915_irq.c
i915_reg.h drm/i915: program FDI_RX TP and FDI delays 2012-07-05 15:09:03 +02:00
i915_suspend.c
i915_sysfs.c
i915_trace_points.c
i915_trace.h
intel_acpi.c
intel_bios.c
intel_bios.h
intel_crt.c
intel_ddi.c drm/i915: program FDI_RX TP and FDI delays 2012-07-05 15:09:03 +02:00
intel_display.c drm/i915: introduce for_each_encoder_on_crtc 2012-07-05 15:06:33 +02:00
intel_dp.c drm/i915: introduce for_each_encoder_on_crtc 2012-07-05 15:06:33 +02:00
intel_drv.h drm/i915: introduce crtc->dspaddr_offset 2012-07-05 13:34:14 +02:00
intel_dvo.c
intel_fb.c drm/i915: Zero initialize mode_cmd 2012-07-05 13:27:58 +02:00
intel_hdmi.c
intel_i2c.c
intel_lvds.c drm/i915: introduce for_each_encoder_on_crtc 2012-07-05 15:06:33 +02:00
intel_modes.c
intel_opregion.c
intel_overlay.c
intel_panel.c
intel_pm.c drm/i915: prevent bogus intel_update_fbc notifications 2012-07-05 09:56:07 +02:00
intel_ringbuffer.c drm/i915: don't return a spurious -EIO from intel_ring_begin 2012-07-05 10:03:45 +02:00
intel_ringbuffer.h
intel_sdvo_regs.h
intel_sdvo.c
intel_sprite.c drm/i915/sprite: Fix mem leak in intel_plane_init() 2012-06-27 17:03:24 +02:00
intel_tv.c drm/i915: introduce for_each_encoder_on_crtc 2012-07-05 15:06:33 +02:00
Makefile