aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/amd/amdgpu/amdgpu_object.c
diff options
context:
space:
mode:
authorMarek Olšák <marek.olsak@amd.com>2015-05-14 17:48:26 -0400
committerAlex Deucher <alexander.deucher@amd.com>2015-06-03 21:03:46 -0400
commitfbd76d59efe061c89d4ba14eef3a2cac1e3056c2 (patch)
tree7fbb02d149ed64072cbf05a1e05292749bd51292 /drivers/gpu/drm/amd/amdgpu/amdgpu_object.c
parent63ab1c2beefe36d49a19f9f715fefdc293546e39 (diff)
drm/amdgpu: rework tiling flags
Signed-off-by: Marek Olšák <marek.olsak@amd.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Acked-by: Christian König <christian.koenig@amd.com>
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_object.c')
-rw-r--r--drivers/gpu/drm/amd/amdgpu/amdgpu_object.c43
1 files changed, 1 insertions, 42 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_object.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_object.c
index a721f5044557..b545f614628c 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_object.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_object.c
@@ -459,49 +459,8 @@ int amdgpu_bo_fbdev_mmap(struct amdgpu_bo *bo,
459 459
460int amdgpu_bo_set_tiling_flags(struct amdgpu_bo *bo, u64 tiling_flags) 460int amdgpu_bo_set_tiling_flags(struct amdgpu_bo *bo, u64 tiling_flags)
461{ 461{
462 unsigned bankw, bankh, mtaspect, tilesplit, stilesplit; 462 if (AMDGPU_TILING_GET(tiling_flags, TILE_SPLIT) > 6)
463
464 bankw = (tiling_flags >> AMDGPU_TILING_EG_BANKW_SHIFT) & AMDGPU_TILING_EG_BANKW_MASK;
465 bankh = (tiling_flags >> AMDGPU_TILING_EG_BANKH_SHIFT) & AMDGPU_TILING_EG_BANKH_MASK;
466 mtaspect = (tiling_flags >> AMDGPU_TILING_EG_MACRO_TILE_ASPECT_SHIFT) & AMDGPU_TILING_EG_MACRO_TILE_ASPECT_MASK;
467 tilesplit = (tiling_flags >> AMDGPU_TILING_EG_TILE_SPLIT_SHIFT) & AMDGPU_TILING_EG_TILE_SPLIT_MASK;
468 stilesplit = (tiling_flags >> AMDGPU_TILING_EG_STENCIL_TILE_SPLIT_SHIFT) & AMDGPU_TILING_EG_STENCIL_TILE_SPLIT_MASK;
469 switch (bankw) {
470 case 0:
471 case 1:
472 case 2:
473 case 4:
474 case 8:
475 break;
476 default:
477 return -EINVAL; 463 return -EINVAL;
478 }
479 switch (bankh) {
480 case 0:
481 case 1:
482 case 2:
483 case 4:
484 case 8:
485 break;
486 default:
487 return -EINVAL;
488 }
489 switch (mtaspect) {
490 case 0:
491 case 1:
492 case 2:
493 case 4:
494 case 8:
495 break;
496 default:
497 return -EINVAL;
498 }
499 if (tilesplit > 6) {
500 return -EINVAL;
501 }
502 if (stilesplit > 6) {
503 return -EINVAL;
504 }
505 464
506 bo->tiling_flags = tiling_flags; 465 bo->tiling_flags = tiling_flags;
507 return 0; 466 return 0;