diff options
author | Roland Scheidegger <sroland@vmware.com> | 2010-06-12 12:12:37 -0400 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2010-06-30 21:59:21 -0400 |
commit | f9da52d54eb0e8822b5e7f32ab1cfa6522533d6e (patch) | |
tree | 9d9dfaca731c0acea84e964467172e7f6b31496c /drivers | |
parent | 76a7142a083434fe55b14f01aa2624733fea39b2 (diff) |
drm/radeon/kms: CS checker texture fixes for r1xx/r2xx/r3xx
fixes:
https://bugs.freedesktop.org/show_bug.cgi?id=28459
agd5f: apply to r1xx/r2xx as well.
Signed-off-by: Roland Scheidegger <sroland@vmware.com>
Cc: stable@kernel.org
Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/gpu/drm/radeon/r100.c | 3 | ||||
-rw-r--r-- | drivers/gpu/drm/radeon/r200.c | 3 | ||||
-rw-r--r-- | drivers/gpu/drm/radeon/r300.c | 5 |
3 files changed, 11 insertions, 0 deletions
diff --git a/drivers/gpu/drm/radeon/r100.c b/drivers/gpu/drm/radeon/r100.c index 1930db6d1771..d524efd9a059 100644 --- a/drivers/gpu/drm/radeon/r100.c +++ b/drivers/gpu/drm/radeon/r100.c | |||
@@ -1628,6 +1628,7 @@ static int r100_packet0_check(struct radeon_cs_parser *p, | |||
1628 | case RADEON_TXFORMAT_RGB332: | 1628 | case RADEON_TXFORMAT_RGB332: |
1629 | case RADEON_TXFORMAT_Y8: | 1629 | case RADEON_TXFORMAT_Y8: |
1630 | track->textures[i].cpp = 1; | 1630 | track->textures[i].cpp = 1; |
1631 | track->textures[i].compress_format = R100_TRACK_COMP_NONE; | ||
1631 | break; | 1632 | break; |
1632 | case RADEON_TXFORMAT_AI88: | 1633 | case RADEON_TXFORMAT_AI88: |
1633 | case RADEON_TXFORMAT_ARGB1555: | 1634 | case RADEON_TXFORMAT_ARGB1555: |
@@ -1639,12 +1640,14 @@ static int r100_packet0_check(struct radeon_cs_parser *p, | |||
1639 | case RADEON_TXFORMAT_LDUDV655: | 1640 | case RADEON_TXFORMAT_LDUDV655: |
1640 | case RADEON_TXFORMAT_DUDV88: | 1641 | case RADEON_TXFORMAT_DUDV88: |
1641 | track->textures[i].cpp = 2; | 1642 | track->textures[i].cpp = 2; |
1643 | track->textures[i].compress_format = R100_TRACK_COMP_NONE; | ||
1642 | break; | 1644 | break; |
1643 | case RADEON_TXFORMAT_ARGB8888: | 1645 | case RADEON_TXFORMAT_ARGB8888: |
1644 | case RADEON_TXFORMAT_RGBA8888: | 1646 | case RADEON_TXFORMAT_RGBA8888: |
1645 | case RADEON_TXFORMAT_SHADOW32: | 1647 | case RADEON_TXFORMAT_SHADOW32: |
1646 | case RADEON_TXFORMAT_LDUDUV8888: | 1648 | case RADEON_TXFORMAT_LDUDUV8888: |
1647 | track->textures[i].cpp = 4; | 1649 | track->textures[i].cpp = 4; |
1650 | track->textures[i].compress_format = R100_TRACK_COMP_NONE; | ||
1648 | break; | 1651 | break; |
1649 | case RADEON_TXFORMAT_DXT1: | 1652 | case RADEON_TXFORMAT_DXT1: |
1650 | track->textures[i].cpp = 1; | 1653 | track->textures[i].cpp = 1; |
diff --git a/drivers/gpu/drm/radeon/r200.c b/drivers/gpu/drm/radeon/r200.c index 85617c311212..a03f8939f327 100644 --- a/drivers/gpu/drm/radeon/r200.c +++ b/drivers/gpu/drm/radeon/r200.c | |||
@@ -450,6 +450,7 @@ int r200_packet0_check(struct radeon_cs_parser *p, | |||
450 | case R200_TXFORMAT_RGB332: | 450 | case R200_TXFORMAT_RGB332: |
451 | case R200_TXFORMAT_Y8: | 451 | case R200_TXFORMAT_Y8: |
452 | track->textures[i].cpp = 1; | 452 | track->textures[i].cpp = 1; |
453 | track->textures[i].compress_format = R100_TRACK_COMP_NONE; | ||
453 | break; | 454 | break; |
454 | case R200_TXFORMAT_AI88: | 455 | case R200_TXFORMAT_AI88: |
455 | case R200_TXFORMAT_ARGB1555: | 456 | case R200_TXFORMAT_ARGB1555: |
@@ -461,6 +462,7 @@ int r200_packet0_check(struct radeon_cs_parser *p, | |||
461 | case R200_TXFORMAT_DVDU88: | 462 | case R200_TXFORMAT_DVDU88: |
462 | case R200_TXFORMAT_AVYU4444: | 463 | case R200_TXFORMAT_AVYU4444: |
463 | track->textures[i].cpp = 2; | 464 | track->textures[i].cpp = 2; |
465 | track->textures[i].compress_format = R100_TRACK_COMP_NONE; | ||
464 | break; | 466 | break; |
465 | case R200_TXFORMAT_ARGB8888: | 467 | case R200_TXFORMAT_ARGB8888: |
466 | case R200_TXFORMAT_RGBA8888: | 468 | case R200_TXFORMAT_RGBA8888: |
@@ -468,6 +470,7 @@ int r200_packet0_check(struct radeon_cs_parser *p, | |||
468 | case R200_TXFORMAT_BGR111110: | 470 | case R200_TXFORMAT_BGR111110: |
469 | case R200_TXFORMAT_LDVDU8888: | 471 | case R200_TXFORMAT_LDVDU8888: |
470 | track->textures[i].cpp = 4; | 472 | track->textures[i].cpp = 4; |
473 | track->textures[i].compress_format = R100_TRACK_COMP_NONE; | ||
471 | break; | 474 | break; |
472 | case R200_TXFORMAT_DXT1: | 475 | case R200_TXFORMAT_DXT1: |
473 | track->textures[i].cpp = 1; | 476 | track->textures[i].cpp = 1; |
diff --git a/drivers/gpu/drm/radeon/r300.c b/drivers/gpu/drm/radeon/r300.c index b2f9efe2897c..7e81db5eb804 100644 --- a/drivers/gpu/drm/radeon/r300.c +++ b/drivers/gpu/drm/radeon/r300.c | |||
@@ -881,6 +881,7 @@ static int r300_packet0_check(struct radeon_cs_parser *p, | |||
881 | case R300_TX_FORMAT_Y4X4: | 881 | case R300_TX_FORMAT_Y4X4: |
882 | case R300_TX_FORMAT_Z3Y3X2: | 882 | case R300_TX_FORMAT_Z3Y3X2: |
883 | track->textures[i].cpp = 1; | 883 | track->textures[i].cpp = 1; |
884 | track->textures[i].compress_format = R100_TRACK_COMP_NONE; | ||
884 | break; | 885 | break; |
885 | case R300_TX_FORMAT_X16: | 886 | case R300_TX_FORMAT_X16: |
886 | case R300_TX_FORMAT_Y8X8: | 887 | case R300_TX_FORMAT_Y8X8: |
@@ -892,6 +893,7 @@ static int r300_packet0_check(struct radeon_cs_parser *p, | |||
892 | case R300_TX_FORMAT_B8G8_B8G8: | 893 | case R300_TX_FORMAT_B8G8_B8G8: |
893 | case R300_TX_FORMAT_G8R8_G8B8: | 894 | case R300_TX_FORMAT_G8R8_G8B8: |
894 | track->textures[i].cpp = 2; | 895 | track->textures[i].cpp = 2; |
896 | track->textures[i].compress_format = R100_TRACK_COMP_NONE; | ||
895 | break; | 897 | break; |
896 | case R300_TX_FORMAT_Y16X16: | 898 | case R300_TX_FORMAT_Y16X16: |
897 | case R300_TX_FORMAT_Z11Y11X10: | 899 | case R300_TX_FORMAT_Z11Y11X10: |
@@ -902,14 +904,17 @@ static int r300_packet0_check(struct radeon_cs_parser *p, | |||
902 | case R300_TX_FORMAT_FL_I32: | 904 | case R300_TX_FORMAT_FL_I32: |
903 | case 0x1e: | 905 | case 0x1e: |
904 | track->textures[i].cpp = 4; | 906 | track->textures[i].cpp = 4; |
907 | track->textures[i].compress_format = R100_TRACK_COMP_NONE; | ||
905 | break; | 908 | break; |
906 | case R300_TX_FORMAT_W16Z16Y16X16: | 909 | case R300_TX_FORMAT_W16Z16Y16X16: |
907 | case R300_TX_FORMAT_FL_R16G16B16A16: | 910 | case R300_TX_FORMAT_FL_R16G16B16A16: |
908 | case R300_TX_FORMAT_FL_I32A32: | 911 | case R300_TX_FORMAT_FL_I32A32: |
909 | track->textures[i].cpp = 8; | 912 | track->textures[i].cpp = 8; |
913 | track->textures[i].compress_format = R100_TRACK_COMP_NONE; | ||
910 | break; | 914 | break; |
911 | case R300_TX_FORMAT_FL_R32G32B32A32: | 915 | case R300_TX_FORMAT_FL_R32G32B32A32: |
912 | track->textures[i].cpp = 16; | 916 | track->textures[i].cpp = 16; |
917 | track->textures[i].compress_format = R100_TRACK_COMP_NONE; | ||
913 | break; | 918 | break; |
914 | case R300_TX_FORMAT_DXT1: | 919 | case R300_TX_FORMAT_DXT1: |
915 | track->textures[i].cpp = 1; | 920 | track->textures[i].cpp = 1; |