diff options
author | Arto Merilainen <amerilainen@nvidia.com> | 2014-08-08 15:49:17 -0400 |
---|---|---|
committer | Dan Willemsen <dwillemsen@nvidia.com> | 2015-03-18 15:10:49 -0400 |
commit | 42d37357f8b4d2f2433f43f951dcbc3978d9f949 (patch) | |
tree | 68441e2bc6894fb2ee5b016e243d6298b9c3179f /drivers/gpu/nvgpu/gk20a | |
parent | dde83cb0d265f1586de322c9c36d36a0bf5358a5 (diff) |
gpu: nvgpu: cde: Allow large surfaces
Currently cde swizzling application forces upper limit to surface
size. The limitation is artificial (i.e. nothing prevents shader
handling larger surfaces). Therefore, make the error condition a
warning.
Change-Id: I8f0cda7f2e9e9ecc90589e5a4b4091abcb513482
Signed-off-by: Arto Merilainen <amerilainen@nvidia.com>
Reviewed-on: http://git-master/r/454591
Reviewed-by: Terje Bergstrom <tbergstrom@nvidia.com>
Tested-by: Terje Bergstrom <tbergstrom@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a')
-rw-r--r-- | drivers/gpu/nvgpu/gk20a/cde_gk20a.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/cde_gk20a.c b/drivers/gpu/nvgpu/gk20a/cde_gk20a.c index 63a1a590..4c115e5f 100644 --- a/drivers/gpu/nvgpu/gk20a/cde_gk20a.c +++ b/drivers/gpu/nvgpu/gk20a/cde_gk20a.c | |||
@@ -1013,10 +1013,9 @@ static int gk20a_buffer_convert_gpu_to_cde( | |||
1013 | const int gridw = roundup(tilepitch, wgx) / wgx; | 1013 | const int gridw = roundup(tilepitch, wgx) / wgx; |
1014 | const int gridh = roundup(ytilesaligned, wgy) / wgy; | 1014 | const int gridh = roundup(ytilesaligned, wgy) / wgy; |
1015 | 1015 | ||
1016 | if (xtiles > 4096 / 8 || ytiles > 4096 / 8) { | 1016 | if (xtiles > 4096 / 8 || ytiles > 4096 / 8) |
1017 | gk20a_warn(&g->dev->dev, "cde: too large surface"); | 1017 | gk20a_warn(&g->dev->dev, "cde: surface is exceptionally large (xtiles=%d, ytiles=%d)", |
1018 | return -EINVAL; | 1018 | xtiles, ytiles); |
1019 | } | ||
1020 | 1019 | ||
1021 | gk20a_dbg(gpu_dbg_cde, "w=%d, h=%d, bh_log2=%d, compbits_offset=0x%llx", | 1020 | gk20a_dbg(gpu_dbg_cde, "w=%d, h=%d, bh_log2=%d, compbits_offset=0x%llx", |
1022 | width, height, block_height_log2, compbits_offset); | 1021 | width, height, block_height_log2, compbits_offset); |