diff options
author | Deepak Nibade <dnibade@nvidia.com> | 2019-07-10 05:52:21 -0400 |
---|---|---|
committer | mobile promotions <svcmobile_promotions@nvidia.com> | 2019-11-04 09:10:48 -0500 |
commit | 0bdffbed34df2e35f1df305173cd19eeb5582305 (patch) | |
tree | 2f158462aea64a913c64f21ae61e6766b29c5ecc /drivers/gpu/nvgpu/gv11b/ce_gv11b.c | |
parent | 0ffc5fa5e44c623b6fde3d6bed5369b9674ee089 (diff) |
gpu: nvgpu: set CE prod values
Add g->ops.ce.init_prod_values() hal for gv11b to initialize
PROD values of CE unit
Bug 2526212
Chery-pick/manual port from dev-main
Change-Id: I8e516b292622e09c537feb7830392648116baa7c
Signed-off-by: Deepak Nibade <dnibade@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/2150874
(cherry picked from commit 0e6a305c6af3ea6d9a0cad7b4071f68028a1aebe)
Reviewed-on: https://git-master.nvidia.com/r/2224709
Reviewed-by: Seshendra Gadagottu <sgadagottu@nvidia.com>
GVS: Gerrit_Virtual_Submit
Tested-by: Peter Daifuku <pdaifuku@nvidia.com>
Reviewed-by: Luis Dib <ldib@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/gv11b/ce_gv11b.c')
-rw-r--r-- | drivers/gpu/nvgpu/gv11b/ce_gv11b.c | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/drivers/gpu/nvgpu/gv11b/ce_gv11b.c b/drivers/gpu/nvgpu/gv11b/ce_gv11b.c index 2eea11df..035f2ef9 100644 --- a/drivers/gpu/nvgpu/gv11b/ce_gv11b.c +++ b/drivers/gpu/nvgpu/gv11b/ce_gv11b.c | |||
@@ -1,7 +1,7 @@ | |||
1 | /* | 1 | /* |
2 | * Volta GPU series Copy Engine. | 2 | * Volta GPU series Copy Engine. |
3 | * | 3 | * |
4 | * Copyright (c) 2016-2018, NVIDIA CORPORATION. All rights reserved. | 4 | * Copyright (c) 2016-2019, NVIDIA CORPORATION. All rights reserved. |
5 | * | 5 | * |
6 | * Permission is hereby granted, free of charge, to any person obtaining a | 6 | * Permission is hereby granted, free of charge, to any person obtaining a |
7 | * copy of this software and associated documentation files (the "Software"), | 7 | * copy of this software and associated documentation files (the "Software"), |
@@ -108,3 +108,17 @@ void gv11b_ce_mthd_buffer_fault_in_bar2_fault(struct gk20a *g) | |||
108 | } | 108 | } |
109 | } | 109 | } |
110 | } | 110 | } |
111 | |||
112 | void gv11b_ce_init_prod_values(struct gk20a *g) | ||
113 | { | ||
114 | u32 reg_val; | ||
115 | u32 num_lce, lce; | ||
116 | |||
117 | num_lce = gv11b_ce_get_num_lce(g); | ||
118 | |||
119 | for (lce = 0U; lce < num_lce; lce++) { | ||
120 | reg_val = nvgpu_readl(g, ce_lce_opt_r(lce)); | ||
121 | reg_val |= ce_lce_opt_force_barriers_npl__prod_f(); | ||
122 | nvgpu_writel(g, ce_lce_opt_r(lce), reg_val); | ||
123 | } | ||
124 | } | ||