diff options
author | Dave Airlie <airlied@redhat.com> | 2015-02-04 19:32:44 -0500 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2015-02-04 19:32:44 -0500 |
commit | 225963dd3eb71357b086bc091a5594d0fa2ac783 (patch) | |
tree | 89ae69cbeaa77d1e640628b68b93f42cfdbdadef /drivers/char | |
parent | e4bf44b3b558742fb7c58b4d34e206c8942f07e6 (diff) | |
parent | b838cbee0d6f0234406e435032b2304f3d05515d (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.c | 14 |
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 | ||
335 | static const struct aper_size_info_fixed intel_fake_agp_sizes[] = { | 335 | static 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 | ||
741 | bool intel_enable_gtt(void) | 741 | bool 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 | } |
863 | EXPORT_SYMBOL(intel_gtt_insert_sg_entries); | 863 | EXPORT_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 | ||
881 | static int intel_fake_agp_insert_entries(struct agp_memory *mem, | 881 | static 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 | } |
943 | EXPORT_SYMBOL(intel_gtt_clear_range); | 943 | EXPORT_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 | ||
1112 | static int i9xx_setup(void) | 1112 | static int i9xx_setup(void) |