diff options
author | Marek Olšák <marek.olsak@amd.com> | 2015-05-14 17:48:26 -0400 |
---|---|---|
committer | Alex Deucher <alexander.deucher@amd.com> | 2015-06-03 21:03:46 -0400 |
commit | fbd76d59efe061c89d4ba14eef3a2cac1e3056c2 (patch) | |
tree | 7fbb02d149ed64072cbf05a1e05292749bd51292 /drivers/gpu/drm/amd/amdgpu/amdgpu_object.c | |
parent | 63ab1c2beefe36d49a19f9f715fefdc293546e39 (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.c | 43 |
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 | ||
460 | int amdgpu_bo_set_tiling_flags(struct amdgpu_bo *bo, u64 tiling_flags) | 460 | int 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; |