summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/gk20a/ltc_common.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a/ltc_common.c')
-rw-r--r--drivers/gpu/nvgpu/gk20a/ltc_common.c53
1 files changed, 0 insertions, 53 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/ltc_common.c b/drivers/gpu/nvgpu/gk20a/ltc_common.c
index 75530b25..7d160efb 100644
--- a/drivers/gpu/nvgpu/gk20a/ltc_common.c
+++ b/drivers/gpu/nvgpu/gk20a/ltc_common.c
@@ -132,59 +132,6 @@ static void gk20a_ltc_set_zbc_depth_entry(struct gk20a *g,
132 depth_val->depth); 132 depth_val->depth);
133} 133}
134 134
135/*
136 * Clear the L2 ZBC color table for the passed index.
137 */
138static void gk20a_ltc_clear_zbc_color_entry(struct gk20a *g, u32 index)
139{
140 u32 i;
141 u32 real_index = index + GK20A_STARTOF_ZBC_TABLE;
142
143 gk20a_writel(g, ltc_ltcs_ltss_dstg_zbc_index_r(),
144 ltc_ltcs_ltss_dstg_zbc_index_address_f(real_index));
145
146 for (i = 0;
147 i < ltc_ltcs_ltss_dstg_zbc_color_clear_value__size_1_v(); i++)
148 gk20a_writel(g,
149 ltc_ltcs_ltss_dstg_zbc_color_clear_value_r(i), 0);
150}
151
152/*
153 * Clear the L2 ZBC depth entry for the passed index.
154 */
155static void gk20a_ltc_clear_zbc_depth_entry(struct gk20a *g, u32 index)
156{
157 u32 real_index = index + GK20A_STARTOF_ZBC_TABLE;
158
159 gk20a_writel(g, ltc_ltcs_ltss_dstg_zbc_index_r(),
160 ltc_ltcs_ltss_dstg_zbc_index_address_f(real_index));
161
162 gk20a_writel(g, ltc_ltcs_ltss_dstg_zbc_depth_clear_value_r(), 0);
163}
164
165static int gk20a_ltc_init_zbc(struct gk20a *g, struct gr_gk20a *gr)
166{
167 u32 i, j;
168
169 /* reset zbc clear */
170 for (i = 0; i < GK20A_SIZEOF_ZBC_TABLE -
171 GK20A_STARTOF_ZBC_TABLE; i++) {
172 gk20a_writel(g, ltc_ltcs_ltss_dstg_zbc_index_r(),
173 (gk20a_readl(g, ltc_ltcs_ltss_dstg_zbc_index_r()) &
174 ~ltc_ltcs_ltss_dstg_zbc_index_address_f(~0)) |
175 ltc_ltcs_ltss_dstg_zbc_index_address_f(
176 i + GK20A_STARTOF_ZBC_TABLE));
177 for (j = 0; j < ltc_ltcs_ltss_dstg_zbc_color_clear_value__size_1_v(); j++)
178 gk20a_writel(g, ltc_ltcs_ltss_dstg_zbc_color_clear_value_r(j), 0);
179 gk20a_writel(g, ltc_ltcs_ltss_dstg_zbc_depth_clear_value_r(), 0);
180 }
181
182 gr_gk20a_clear_zbc_table(g, gr);
183 gr_gk20a_load_zbc_default_table(g, gr);
184
185 return 0;
186}
187
188static int gk20a_ltc_alloc_phys_cbc(struct gk20a *g, 135static int gk20a_ltc_alloc_phys_cbc(struct gk20a *g,
189 size_t compbit_backing_size) 136 size_t compbit_backing_size)
190{ 137{