diff options
Diffstat (limited to 'drivers/gpu/nvgpu/gp10b')
-rw-r--r-- | drivers/gpu/nvgpu/gp10b/gr_gp10b.c | 39 | ||||
-rw-r--r-- | drivers/gpu/nvgpu/gp10b/hal_gp10b.c | 1 |
2 files changed, 0 insertions, 40 deletions
diff --git a/drivers/gpu/nvgpu/gp10b/gr_gp10b.c b/drivers/gpu/nvgpu/gp10b/gr_gp10b.c index 66d48e6a..2fd393bd 100644 --- a/drivers/gpu/nvgpu/gp10b/gr_gp10b.c +++ b/drivers/gpu/nvgpu/gp10b/gr_gp10b.c | |||
@@ -2291,45 +2291,6 @@ int gr_gp10b_get_preemption_mode_flags(struct gk20a *g, | |||
2291 | 2291 | ||
2292 | return 0; | 2292 | return 0; |
2293 | } | 2293 | } |
2294 | int gp10b_gr_fuse_override(struct gk20a *g) | ||
2295 | { | ||
2296 | struct device_node *np = dev_from_gk20a(g)->of_node; | ||
2297 | u32 *fuses; | ||
2298 | int count, i; | ||
2299 | |||
2300 | if (!np) /* may be pcie device */ | ||
2301 | return 0; | ||
2302 | |||
2303 | count = of_property_count_elems_of_size(np, "fuse-overrides", 8); | ||
2304 | if (count <= 0) | ||
2305 | return count; | ||
2306 | |||
2307 | fuses = nvgpu_kmalloc(g, sizeof(u32) * count * 2); | ||
2308 | if (!fuses) | ||
2309 | return -ENOMEM; | ||
2310 | of_property_read_u32_array(np, "fuse-overrides", fuses, count * 2); | ||
2311 | for (i = 0; i < count; i++) { | ||
2312 | u32 fuse, value; | ||
2313 | |||
2314 | fuse = fuses[2 * i]; | ||
2315 | value = fuses[2 * i + 1]; | ||
2316 | switch (fuse) { | ||
2317 | case GM20B_FUSE_OPT_TPC_DISABLE: | ||
2318 | gm20b_gr_tpc_disable_override(g, value); | ||
2319 | break; | ||
2320 | case GP10B_FUSE_OPT_ECC_EN: | ||
2321 | g->gr.t18x.fecs_feature_override_ecc_val = value; | ||
2322 | break; | ||
2323 | default: | ||
2324 | nvgpu_err(g, "ignore unknown fuse override %08x", fuse); | ||
2325 | break; | ||
2326 | } | ||
2327 | } | ||
2328 | |||
2329 | nvgpu_kfree(g, fuses); | ||
2330 | |||
2331 | return 0; | ||
2332 | } | ||
2333 | 2294 | ||
2334 | int gr_gp10b_init_preemption_state(struct gk20a *g) | 2295 | int gr_gp10b_init_preemption_state(struct gk20a *g) |
2335 | { | 2296 | { |
diff --git a/drivers/gpu/nvgpu/gp10b/hal_gp10b.c b/drivers/gpu/nvgpu/gp10b/hal_gp10b.c index a54a3297..757eae04 100644 --- a/drivers/gpu/nvgpu/gp10b/hal_gp10b.c +++ b/drivers/gpu/nvgpu/gp10b/hal_gp10b.c | |||
@@ -263,7 +263,6 @@ static const struct gpu_ops gp10b_ops = { | |||
263 | .suspend_contexts = gr_gp10b_suspend_contexts, | 263 | .suspend_contexts = gr_gp10b_suspend_contexts, |
264 | .resume_contexts = gr_gk20a_resume_contexts, | 264 | .resume_contexts = gr_gk20a_resume_contexts, |
265 | .get_preemption_mode_flags = gr_gp10b_get_preemption_mode_flags, | 265 | .get_preemption_mode_flags = gr_gp10b_get_preemption_mode_flags, |
266 | .fuse_override = gp10b_gr_fuse_override, | ||
267 | .init_sm_id_table = gr_gk20a_init_sm_id_table, | 266 | .init_sm_id_table = gr_gk20a_init_sm_id_table, |
268 | .load_smid_config = gr_gp10b_load_smid_config, | 267 | .load_smid_config = gr_gp10b_load_smid_config, |
269 | .program_sm_id_numbering = gr_gm20b_program_sm_id_numbering, | 268 | .program_sm_id_numbering = gr_gm20b_program_sm_id_numbering, |