diff options
author | Daniel Vetter <daniel.vetter@ffwll.ch> | 2012-11-29 16:18:51 -0500 |
---|---|---|
committer | Daniel Vetter <daniel.vetter@ffwll.ch> | 2012-12-03 16:31:04 -0500 |
commit | 1a240d4de2ccf40de5796a4d1dbb3a0236051fc9 (patch) | |
tree | b9bb2cb0b3e1158f01b35a2c3aea9c2bcf060f27 /drivers/gpu | |
parent | c1f093e09c4ceb583b04d11e767bb3201812e4d2 (diff) |
drm/i915: fixup sparse warnings
- __iomem where there is none (I love how we mix these things up).
- Use gfp_t instead of an other plain type.
- Unconfuse one place about enum pipe vs enum transcoder - for the pch
transcoder we actually use the pipe enum. Fixup the other cases
where we assign the pipe to the cpu transcoder with explicit casts.
- Declare the mch_lock properly in a header.
There is still a decent mess in intel_bios.c about __iomem, but heck,
this is x86 and we're allowed to do that.
Makes-sparse-happy: Chris Wilson <chris@chris-wilson.co.uk>
[danvet: Use a space after the cast consistently and fix up the
newly-added cast in i915_irq.c to properly use __iomem.]
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Diffstat (limited to 'drivers/gpu')
-rw-r--r-- | drivers/gpu/drm/i915/i915_debugfs.c | 4 | ||||
-rw-r--r-- | drivers/gpu/drm/i915/i915_drv.h | 3 | ||||
-rw-r--r-- | drivers/gpu/drm/i915/i915_gem.c | 2 | ||||
-rw-r--r-- | drivers/gpu/drm/i915/i915_irq.c | 5 | ||||
-rw-r--r-- | drivers/gpu/drm/i915/intel_ddi.c | 2 | ||||
-rw-r--r-- | drivers/gpu/drm/i915/intel_display.c | 9 |
6 files changed, 13 insertions, 12 deletions
diff --git a/drivers/gpu/drm/i915/i915_debugfs.c b/drivers/gpu/drm/i915/i915_debugfs.c index 58e667687741..ce60506b574b 100644 --- a/drivers/gpu/drm/i915/i915_debugfs.c +++ b/drivers/gpu/drm/i915/i915_debugfs.c | |||
@@ -546,11 +546,11 @@ static int i915_hws_info(struct seq_file *m, void *data) | |||
546 | struct drm_device *dev = node->minor->dev; | 546 | struct drm_device *dev = node->minor->dev; |
547 | drm_i915_private_t *dev_priv = dev->dev_private; | 547 | drm_i915_private_t *dev_priv = dev->dev_private; |
548 | struct intel_ring_buffer *ring; | 548 | struct intel_ring_buffer *ring; |
549 | const volatile u32 __iomem *hws; | 549 | const u32 *hws; |
550 | int i; | 550 | int i; |
551 | 551 | ||
552 | ring = &dev_priv->ring[(uintptr_t)node->info_ent->data]; | 552 | ring = &dev_priv->ring[(uintptr_t)node->info_ent->data]; |
553 | hws = (volatile u32 __iomem *)ring->status_page.page_addr; | 553 | hws = ring->status_page.page_addr; |
554 | if (hws == NULL) | 554 | if (hws == NULL) |
555 | return 0; | 555 | return 0; |
556 | 556 | ||
diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h index 3473298a137f..bb0eb0f8f6b3 100644 --- a/drivers/gpu/drm/i915/i915_drv.h +++ b/drivers/gpu/drm/i915/i915_drv.h | |||
@@ -577,6 +577,9 @@ struct intel_gen6_power_mgmt { | |||
577 | struct mutex hw_lock; | 577 | struct mutex hw_lock; |
578 | }; | 578 | }; |
579 | 579 | ||
580 | /* defined intel_pm.c */ | ||
581 | extern spinlock_t mchdev_lock; | ||
582 | |||
580 | struct intel_ilk_power_mgmt { | 583 | struct intel_ilk_power_mgmt { |
581 | u8 cur_delay; | 584 | u8 cur_delay; |
582 | u8 min_delay; | 585 | u8 min_delay; |
diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c index b68bc02745db..cb941448c2bc 100644 --- a/drivers/gpu/drm/i915/i915_gem.c +++ b/drivers/gpu/drm/i915/i915_gem.c | |||
@@ -3705,7 +3705,7 @@ struct drm_i915_gem_object *i915_gem_alloc_object(struct drm_device *dev, | |||
3705 | { | 3705 | { |
3706 | struct drm_i915_gem_object *obj; | 3706 | struct drm_i915_gem_object *obj; |
3707 | struct address_space *mapping; | 3707 | struct address_space *mapping; |
3708 | u32 mask; | 3708 | gfp_t mask; |
3709 | 3709 | ||
3710 | obj = i915_gem_object_alloc(dev); | 3710 | obj = i915_gem_object_alloc(dev); |
3711 | if (obj == NULL) | 3711 | if (obj == NULL) |
diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c index 7a0ddee9751a..68e7cafa13de 100644 --- a/drivers/gpu/drm/i915/i915_irq.c +++ b/drivers/gpu/drm/i915/i915_irq.c | |||
@@ -300,9 +300,6 @@ static void i915_hotplug_work_func(struct work_struct *work) | |||
300 | drm_helper_hpd_irq_event(dev); | 300 | drm_helper_hpd_irq_event(dev); |
301 | } | 301 | } |
302 | 302 | ||
303 | /* defined intel_pm.c */ | ||
304 | extern spinlock_t mchdev_lock; | ||
305 | |||
306 | static void ironlake_handle_rps_change(struct drm_device *dev) | 303 | static void ironlake_handle_rps_change(struct drm_device *dev) |
307 | { | 304 | { |
308 | drm_i915_private_t *dev_priv = dev->dev_private; | 305 | drm_i915_private_t *dev_priv = dev->dev_private; |
@@ -936,7 +933,7 @@ i915_error_object_create(struct drm_i915_private *dev_priv, | |||
936 | offset += src->stolen->start; | 933 | offset += src->stolen->start; |
937 | offset += i << PAGE_SHIFT; | 934 | offset += i << PAGE_SHIFT; |
938 | 935 | ||
939 | memcpy_fromio(d, (void *)offset, PAGE_SIZE); | 936 | memcpy_fromio(d, (void __iomem *) offset, PAGE_SIZE); |
940 | } else { | 937 | } else { |
941 | struct page *page; | 938 | struct page *page; |
942 | void *s; | 939 | void *s; |
diff --git a/drivers/gpu/drm/i915/intel_ddi.c b/drivers/gpu/drm/i915/intel_ddi.c index ad936c68e4cb..f02b3feff504 100644 --- a/drivers/gpu/drm/i915/intel_ddi.c +++ b/drivers/gpu/drm/i915/intel_ddi.c | |||
@@ -1044,7 +1044,7 @@ bool intel_ddi_connector_get_hw_state(struct intel_connector *intel_connector) | |||
1044 | if (port == PORT_A) | 1044 | if (port == PORT_A) |
1045 | cpu_transcoder = TRANSCODER_EDP; | 1045 | cpu_transcoder = TRANSCODER_EDP; |
1046 | else | 1046 | else |
1047 | cpu_transcoder = pipe; | 1047 | cpu_transcoder = (enum transcoder) pipe; |
1048 | 1048 | ||
1049 | tmp = I915_READ(TRANS_DDI_FUNC_CTL(cpu_transcoder)); | 1049 | tmp = I915_READ(TRANS_DDI_FUNC_CTL(cpu_transcoder)); |
1050 | 1050 | ||
diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c index d303f2a90e70..093a163d4b1c 100644 --- a/drivers/gpu/drm/i915/intel_display.c +++ b/drivers/gpu/drm/i915/intel_display.c | |||
@@ -1671,7 +1671,7 @@ static void lpt_enable_pch_transcoder(struct drm_i915_private *dev_priv, | |||
1671 | BUG_ON(dev_priv->info->gen < 5); | 1671 | BUG_ON(dev_priv->info->gen < 5); |
1672 | 1672 | ||
1673 | /* FDI must be feeding us bits for PCH ports */ | 1673 | /* FDI must be feeding us bits for PCH ports */ |
1674 | assert_fdi_tx_enabled(dev_priv, cpu_transcoder); | 1674 | assert_fdi_tx_enabled(dev_priv, (enum pipe) cpu_transcoder); |
1675 | assert_fdi_rx_enabled(dev_priv, TRANSCODER_A); | 1675 | assert_fdi_rx_enabled(dev_priv, TRANSCODER_A); |
1676 | 1676 | ||
1677 | /* Workaround: set timing override bit. */ | 1677 | /* Workaround: set timing override bit. */ |
@@ -1759,7 +1759,7 @@ static void intel_enable_pipe(struct drm_i915_private *dev_priv, enum pipe pipe, | |||
1759 | { | 1759 | { |
1760 | enum transcoder cpu_transcoder = intel_pipe_to_cpu_transcoder(dev_priv, | 1760 | enum transcoder cpu_transcoder = intel_pipe_to_cpu_transcoder(dev_priv, |
1761 | pipe); | 1761 | pipe); |
1762 | enum transcoder pch_transcoder; | 1762 | enum pipe pch_transcoder; |
1763 | int reg; | 1763 | int reg; |
1764 | u32 val; | 1764 | u32 val; |
1765 | 1765 | ||
@@ -1779,7 +1779,8 @@ static void intel_enable_pipe(struct drm_i915_private *dev_priv, enum pipe pipe, | |||
1779 | if (pch_port) { | 1779 | if (pch_port) { |
1780 | /* if driving the PCH, we need FDI enabled */ | 1780 | /* if driving the PCH, we need FDI enabled */ |
1781 | assert_fdi_rx_pll_enabled(dev_priv, pch_transcoder); | 1781 | assert_fdi_rx_pll_enabled(dev_priv, pch_transcoder); |
1782 | assert_fdi_tx_pll_enabled(dev_priv, cpu_transcoder); | 1782 | assert_fdi_tx_pll_enabled(dev_priv, |
1783 | (enum pipe) cpu_transcoder); | ||
1783 | } | 1784 | } |
1784 | /* FIXME: assert CPU port conditions for SNB+ */ | 1785 | /* FIXME: assert CPU port conditions for SNB+ */ |
1785 | } | 1786 | } |
@@ -3598,7 +3599,7 @@ static void haswell_crtc_off(struct drm_crtc *crtc) | |||
3598 | 3599 | ||
3599 | /* Stop saying we're using TRANSCODER_EDP because some other CRTC might | 3600 | /* Stop saying we're using TRANSCODER_EDP because some other CRTC might |
3600 | * start using it. */ | 3601 | * start using it. */ |
3601 | intel_crtc->cpu_transcoder = intel_crtc->pipe; | 3602 | intel_crtc->cpu_transcoder = (enum transcoder) intel_crtc->pipe; |
3602 | 3603 | ||
3603 | intel_ddi_put_crtc_pll(crtc); | 3604 | intel_ddi_put_crtc_pll(crtc); |
3604 | } | 3605 | } |