linux/drivers/gpu/drm/i915
Chris Wilson 42d6ab4839 drm/i915: Segregate memory domains in the GTT using coloring
Several functions of the GPU have the restriction that differing memory
domains cannot be placed next to each other (as the GPU may prefetch
beyond the end of one domain and hang as it crosses into the other
domain). We use the facility of the drm_mm to mark ranges with a
particular color that corresponds to the cache attributes of those pages
in order to prevent allocating adjacent blocks of differing memory
types.

v2: Rebase ontop of drm_mm coloring v2.
v3: Fix rebinding existing gtt_space and add a verification routine.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2012-07-26 12:56:25 +02:00
..
dvo_ch7xxx.c Drivers: i915: Fix all space related issues. 2011-09-19 18:01:47 -07:00
dvo_ch7017.c Drivers: i915: Fix all space related issues. 2011-09-19 18:01:47 -07:00
dvo_ivch.c Drivers: i915: Fix all space related issues. 2011-09-19 18:01:47 -07:00
dvo_ns2501.c drm/i915: Support for ns2501-DVO 2012-07-25 18:23:48 +02:00
dvo_sil164.c Drivers: i915: Fix all space related issues. 2011-09-19 18:01:47 -07:00
dvo_tfp410.c Drivers: i915: Fix all space related issues. 2011-09-19 18:01:47 -07:00
dvo.h drm/i915: Support for ns2501-DVO 2012-07-25 18:23:48 +02:00
i915_debugfs.c drm/i915: Remove the defunct flushing list 2012-07-25 18:23:52 +02:00
i915_dma.c drm/i915: add register read IOCTL 2012-07-25 18:23:49 +02:00
i915_drv.c drm/i915: create VLV_DSIPLAY_BASE #define 2012-07-25 18:23:50 +02:00
i915_drv.h drm/i915: Segregate memory domains in the GTT using coloring 2012-07-26 12:56:25 +02:00
i915_gem_context.c drm/i915: Add contexts for HSW 2012-07-25 18:23:56 +02:00
i915_gem_debug.c drm/i915: stop using dev->agp->base 2012-06-12 22:18:06 +02:00
i915_gem_dmabuf.c i915: add dma-buf vmap support for exporting vmapped buffer 2012-05-31 14:13:57 +01:00
i915_gem_evict.c drm/i915: Segregate memory domains in the GTT using coloring 2012-07-26 12:56:25 +02:00
i915_gem_execbuffer.c drm/i915: Avoid concurrent access when marking the device as idle/busy 2012-07-25 18:23:56 +02:00
i915_gem_gtt.c drm/i915: Segregate memory domains in the GTT using coloring 2012-07-26 12:56:25 +02:00
i915_gem_stolen.c drm/i915: Split the stolen handling for GEM out of i915_dma.c 2012-05-03 11:18:11 +02:00
i915_gem_tiling.c drm/i915: Only the zap the VMA after updating the tiling parameters 2012-05-03 11:18:07 +02:00
i915_gem.c drm/i915: Segregate memory domains in the GTT using coloring 2012-07-26 12:56:25 +02:00
i915_ioc32.c drm/i915: [sparse] trivial sparse fixes 2012-04-18 10:34:49 +02:00
i915_irq.c drm/i915: Macro to determine DPF support 2012-07-25 18:23:56 +02:00
i915_reg.h drm/i915: Add contexts for HSW 2012-07-25 18:23:56 +02:00
i915_suspend.c drm/i915: wrap up gt powersave enabling functions 2012-06-25 21:07:03 +02:00
i915_sysfs.c drm/i915: Macro to determine DPF support 2012-07-25 18:23:56 +02:00
i915_trace_points.c drm/i915: [sparse] trivial sparse fixes 2012-04-18 10:34:49 +02:00
i915_trace.h drm/i915: improve i915_wait_request_begin trace 2012-05-25 09:55:15 +02:00
intel_acpi.c drm/i915: [sparse] trivial sparse fixes 2012-04-18 10:34:49 +02:00
intel_bios.c drm/i915/bios: cleanup return type of intel_parse_bios() 2012-06-27 10:17:51 +01:00
intel_bios.h drm/i915/bios: cleanup return type of intel_parse_bios() 2012-06-27 10:17:51 +01:00
intel_crt.c drm/i915: add inte_crt->adpa_reg 2012-07-25 18:23:50 +02:00
intel_ddi.c drm/i915: add port parameter to intel_hdmi_init 2012-07-25 18:23:47 +02:00
intel_display.c drm/i915: Avoid concurrent access when marking the device as idle/busy 2012-07-25 18:23:56 +02:00
intel_dp.c drm/i915: add port field to struct intel_dp and use it 2012-07-25 18:23:48 +02:00
intel_drv.h drm/i915: Avoid concurrent access when marking the device as idle/busy 2012-07-25 18:23:56 +02:00
intel_dvo.c drm/i915: Support for ns2501-DVO 2012-07-25 18:23:48 +02:00
intel_fb.c drm/i915: Zero initialize mode_cmd 2012-07-05 13:27:58 +02:00
intel_hdmi.c drm/i915: add port parameter to intel_hdmi_init 2012-07-25 18:23:47 +02:00
intel_i2c.c drm/i915: be more careful when returning -ENXIO in gmbus transfer 2012-05-21 21:04:21 +02:00
intel_lvds.c drm/i915: simplify possible_clones computation 2012-07-25 18:23:46 +02:00
intel_modes.c drm/i915: kill intel_ddc_probe 2012-07-20 12:21:39 +02:00
intel_opregion.c drm/i915: [sparse] __iomem fixes for opregion 2012-05-03 11:18:00 +02:00
intel_overlay.c drm/i915: s/i915_wait_request/i915_wait_seqno/g 2012-05-25 14:18:42 +02:00
intel_panel.c drm/i915: don't forget the PCH backlight registers 2012-07-20 12:21:41 +02:00
intel_pm.c drm/i915: Avoid concurrent access when marking the device as idle/busy 2012-07-25 18:23:56 +02:00
intel_ringbuffer.c drm/i915: Macro to determine DPF support 2012-07-25 18:23:56 +02:00
intel_ringbuffer.h drm/i915: Split i915_gem_flush_ring() into seperate invalidate/flush funcs 2012-07-25 18:23:55 +02:00
intel_sdvo_regs.h drm/i915: properly handle interlaced bit for sdvo dtd conversion 2012-05-24 17:53:52 +02:00
intel_sdvo.c drm/i915: simplify possible_clones computation 2012-07-25 18:23:46 +02:00
intel_sprite.c drm/i915: mask tiled bit when updating ILK sprites 2012-07-20 12:21:40 +02:00
intel_tv.c drm/i915: simplify possible_clones computation 2012-07-25 18:23:46 +02:00
Makefile drm/i915: Support for ns2501-DVO 2012-07-25 18:23:48 +02:00