aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/char
diff options
context:
space:
mode:
authorDave Airlie <airlied@redhat.com>2015-02-04 19:32:44 -0500
committerDave Airlie <airlied@redhat.com>2015-02-04 19:32:44 -0500
commit225963dd3eb71357b086bc091a5594d0fa2ac783 (patch)
tree89ae69cbeaa77d1e640628b68b93f42cfdbdadef /drivers/char
parente4bf44b3b558742fb7c58b4d34e206c8942f07e6 (diff)
parentb838cbee0d6f0234406e435032b2304f3d05515d (diff)
Merge branch 'drm-intel-next' of git://anongit.freedesktop.org/drm-intel into drm-next
drm-intel-next-2015-01-30: - chv rps improvements from Ville - atomic state handling prep work from Ander - execlist request tracking refactoring from Nick Hoath - forcewake code consolidation from Chris&Mika - fastboot plane config refactoring and skl support from Damien - some more skl pm patches all over (Damien) - refactor dsi code to use drm dsi helpers and drm_panel infrastructure (Jani) - first cut at experimental atomic plane updates (Matt Roper) - piles of smaller things all over, as usual * 'drm-intel-next' of git://anongit.freedesktop.org/drm-intel: (102 commits) drm/i915: Remove bogus locking check in the hangcheck code drm/i915: Update DRIVER_DATE to 20150130 drm/i915: Use pipe_config's cpu_transcoder for reading encoder hw state drm/i915: Fix a use-after-free in intel_execlists_retire_requests drm/i915: Split shared dpll setup out of __intel_set_mode() drm/i915: Don't do posting reads on getting forcewake drm/i915: Do uncore early sanitize after domain init drm/i915: Handle CHV in vlv_set_rps_idle() drm/i915: Remove nested work in gpu error handling drm/i915/documentation: Add intel_uncore.c to drm.tmpl drm/i915/dsi: remove intel_dsi_cmd.c and the unused functions therein drm/i915/dsi: move dpi_send_cmd() to intel_dsi.c and make it static drm/i915/dsi: remove old read/write functions in favor of new stuff drm/i915/dsi: make the vbt panel driver use mipi_dsi_device for transfers drm/i915/dsi: add drm mipi dsi host support drm/i915/dsi: switch to drm_panel interface drm/i915/skl: Enabling PSR on Skylake Revert "drm/i915: Fix mutex->owner inspection race under DEBUG_MUTEXES" drm/i915: Be consistent on printing seqnos drm/i915: Display current hangcheck status in debugfs ...
Diffstat (limited to 'drivers/char')
-rw-r--r--drivers/char/agp/intel-gtt.c14
1 files changed, 7 insertions, 7 deletions
diff --git a/drivers/char/agp/intel-gtt.c b/drivers/char/agp/intel-gtt.c
index 92aa43fa8d70..0b4188b9af7c 100644
--- a/drivers/char/agp/intel-gtt.c
+++ b/drivers/char/agp/intel-gtt.c
@@ -225,7 +225,7 @@ static int i810_insert_dcache_entries(struct agp_memory *mem, off_t pg_start,
225 intel_private.driver->write_entry(addr, 225 intel_private.driver->write_entry(addr,
226 i, type); 226 i, type);
227 } 227 }
228 readl(intel_private.gtt+i-1); 228 wmb();
229 229
230 return 0; 230 return 0;
231} 231}
@@ -329,7 +329,7 @@ static void i810_write_entry(dma_addr_t addr, unsigned int entry,
329 break; 329 break;
330 } 330 }
331 331
332 writel(addr | pte_flags, intel_private.gtt + entry); 332 writel_relaxed(addr | pte_flags, intel_private.gtt + entry);
333} 333}
334 334
335static const struct aper_size_info_fixed intel_fake_agp_sizes[] = { 335static const struct aper_size_info_fixed intel_fake_agp_sizes[] = {
@@ -735,7 +735,7 @@ static void i830_write_entry(dma_addr_t addr, unsigned int entry,
735 if (flags == AGP_USER_CACHED_MEMORY) 735 if (flags == AGP_USER_CACHED_MEMORY)
736 pte_flags |= I830_PTE_SYSTEM_CACHED; 736 pte_flags |= I830_PTE_SYSTEM_CACHED;
737 737
738 writel(addr | pte_flags, intel_private.gtt + entry); 738 writel_relaxed(addr | pte_flags, intel_private.gtt + entry);
739} 739}
740 740
741bool intel_enable_gtt(void) 741bool intel_enable_gtt(void)
@@ -858,7 +858,7 @@ void intel_gtt_insert_sg_entries(struct sg_table *st,
858 j++; 858 j++;
859 } 859 }
860 } 860 }
861 readl(intel_private.gtt+j-1); 861 wmb();
862} 862}
863EXPORT_SYMBOL(intel_gtt_insert_sg_entries); 863EXPORT_SYMBOL(intel_gtt_insert_sg_entries);
864 864
@@ -875,7 +875,7 @@ static void intel_gtt_insert_pages(unsigned int first_entry,
875 intel_private.driver->write_entry(addr, 875 intel_private.driver->write_entry(addr,
876 j, flags); 876 j, flags);
877 } 877 }
878 readl(intel_private.gtt+j-1); 878 wmb();
879} 879}
880 880
881static int intel_fake_agp_insert_entries(struct agp_memory *mem, 881static int intel_fake_agp_insert_entries(struct agp_memory *mem,
@@ -938,7 +938,7 @@ void intel_gtt_clear_range(unsigned int first_entry, unsigned int num_entries)
938 intel_private.driver->write_entry(intel_private.scratch_page_dma, 938 intel_private.driver->write_entry(intel_private.scratch_page_dma,
939 i, 0); 939 i, 0);
940 } 940 }
941 readl(intel_private.gtt+i-1); 941 wmb();
942} 942}
943EXPORT_SYMBOL(intel_gtt_clear_range); 943EXPORT_SYMBOL(intel_gtt_clear_range);
944 944
@@ -1106,7 +1106,7 @@ static void i965_write_entry(dma_addr_t addr,
1106 1106
1107 /* Shift high bits down */ 1107 /* Shift high bits down */
1108 addr |= (addr >> 28) & 0xf0; 1108 addr |= (addr >> 28) & 0xf0;
1109 writel(addr | pte_flags, intel_private.gtt + entry); 1109 writel_relaxed(addr | pte_flags, intel_private.gtt + entry);
1110} 1110}
1111 1111
1112static int i9xx_setup(void) 1112static int i9xx_setup(void)