gpu: nvgpu: ga10b: Use active ltcs count for cbc init

This patch fixes a bug in the cbc initialization code for ga10b,
where it was erroneously assumed that a fixed ltc count of only one
should be used for historical reasons. For volta and later, the full
ltc count should be used in cbc-related computation.
Ensure
- CBC base address is 64K aligned
- CBC start address lies within CBC allocated memory

Check CBC is marked safe only for silicon platform.

Bug 3353418

Change-Id: I5edee2a78dc9e8c149e111a9f088a57e0154f5c2
Signed-off-by: Vedashree Vidwans <vvidwans@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2585778
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Reviewed-by: Seema Khowala <seemaj@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
This commit is contained in:
Vedashree Vidwans
2021-08-25 21:58:21 -07:00
committed by mobile promotions
parent cc7b048641
commit a3e2283cf2
13 changed files with 113 additions and 67 deletions

View File

@@ -403,7 +403,6 @@ static const struct gops_cbc ga100_ops_cbc = {
.cbc_init_support = nvgpu_cbc_init_support,
.cbc_remove_support = nvgpu_cbc_remove_support,
.init = tu104_cbc_init,
.get_base_divisor = tu104_cbc_get_base_divisor,
.alloc_comptags = ga100_cbc_alloc_comptags,
.ctrl = tu104_cbc_ctrl,
.fix_config = NULL,
@@ -882,6 +881,7 @@ static const struct gops_fb ga100_ops_fb = {
#ifdef CONFIG_NVGPU_COMPRESSION
.is_comptagline_mode_enabled = ga100_fb_is_comptagline_mode_enabled,
.cbc_configure = tu104_fb_cbc_configure,
.cbc_get_alignment = tu104_fb_cbc_get_alignment,
.set_use_full_comp_tag_line = gm20b_fb_set_use_full_comp_tag_line,
.compression_page_size = ga100_fb_compression_page_size,
.compressible_page_size = gp10b_fb_compressible_page_size,