aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/radeon/r600_blit.c
diff options
context:
space:
mode:
authorDave Airlie <airlied@redhat.com>2009-10-11 23:54:10 -0400
committerDave Airlie <airlied@redhat.com>2009-10-11 23:54:10 -0400
commitceeb50279b3d05eb7ea2b67e90acb2110d09325f (patch)
tree774780c392d0f687383b96d6e569a81fa4d2eeee /drivers/gpu/drm/radeon/r600_blit.c
parent0549a061b545d232d12836f98c7c4965dd83f837 (diff)
drm/radeon: Revert "drm/r600: avoid assigning vb twice in blit code"
This reverts commit 49c458e544ae14514209ed80ea6829ca1b18ddf0. It seems to have some side effects in the non-kms cases. Signed-off-by: Dave Airlie <airlied@redhat.com>
Diffstat (limited to 'drivers/gpu/drm/radeon/r600_blit.c')
-rw-r--r--drivers/gpu/drm/radeon/r600_blit.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/drivers/gpu/drm/radeon/r600_blit.c b/drivers/gpu/drm/radeon/r600_blit.c
index dec501081608..d988eece0187 100644
--- a/drivers/gpu/drm/radeon/r600_blit.c
+++ b/drivers/gpu/drm/radeon/r600_blit.c
@@ -582,6 +582,8 @@ r600_blit_copy(struct drm_device *dev,
582 u64 vb_addr; 582 u64 vb_addr;
583 u32 *vb; 583 u32 *vb;
584 584
585 vb = r600_nomm_get_vb_ptr(dev);
586
585 if ((size_bytes & 3) || (src_gpu_addr & 3) || (dst_gpu_addr & 3)) { 587 if ((size_bytes & 3) || (src_gpu_addr & 3) || (dst_gpu_addr & 3)) {
586 max_bytes = 8192; 588 max_bytes = 8192;
587 589
@@ -617,8 +619,8 @@ r600_blit_copy(struct drm_device *dev,
617 if (!dev_priv->blit_vb) 619 if (!dev_priv->blit_vb)
618 return; 620 return;
619 set_shaders(dev); 621 set_shaders(dev);
622 vb = r600_nomm_get_vb_ptr(dev);
620 } 623 }
621 vb = r600_nomm_get_vb_ptr(dev);
622 624
623 vb[0] = i2f(dst_x); 625 vb[0] = i2f(dst_x);
624 vb[1] = 0; 626 vb[1] = 0;
@@ -706,8 +708,8 @@ r600_blit_copy(struct drm_device *dev,
706 return; 708 return;
707 709
708 set_shaders(dev); 710 set_shaders(dev);
711 vb = r600_nomm_get_vb_ptr(dev);
709 } 712 }
710 vb = r600_nomm_get_vb_ptr(dev);
711 713
712 vb[0] = i2f(dst_x / 4); 714 vb[0] = i2f(dst_x / 4);
713 vb[1] = 0; 715 vb[1] = 0;
@@ -775,6 +777,8 @@ r600_blit_swap(struct drm_device *dev,
775 u64 vb_addr; 777 u64 vb_addr;
776 u32 *vb; 778 u32 *vb;
777 779
780 vb = r600_nomm_get_vb_ptr(dev);
781
778 if ((dev_priv->blit_vb->used + 48) > dev_priv->blit_vb->total) { 782 if ((dev_priv->blit_vb->used + 48) > dev_priv->blit_vb->total) {
779 783
780 r600_nomm_put_vb(dev); 784 r600_nomm_put_vb(dev);
@@ -783,8 +787,8 @@ r600_blit_swap(struct drm_device *dev,
783 return; 787 return;
784 788
785 set_shaders(dev); 789 set_shaders(dev);
790 vb = r600_nomm_get_vb_ptr(dev);
786 } 791 }
787 vb = r600_nomm_get_vb_ptr(dev);
788 792
789 if (cpp == 4) { 793 if (cpp == 4) {
790 cb_format = COLOR_8_8_8_8; 794 cb_format = COLOR_8_8_8_8;