diff options
author | Sunny He <suhe@nvidia.com> | 2017-07-31 17:40:46 -0400 |
---|---|---|
committer | mobile promotions <svcmobile_promotions@nvidia.com> | 2017-08-14 18:55:19 -0400 |
commit | 4bb0896912440d126ae47da350b448f37dabc63d (patch) | |
tree | 517e88d61e849a75755d0e5c0de675a5f432f852 /drivers/gpu/nvgpu/gv100/fb_gv100.c | |
parent | de232ceb4b3bfa88650d1eed764357ba4a598076 (diff) |
gpu: nvgpu: Reorg fb HAL initialization
Reorganize HAL initialization to remove inheritance and construct
the gpu_ops struct at compile time. This patch only covers the
fb sub-module of the gpu_ops struct.
Perform HAL function assignments in hal_gxxxx.c through the
population of a chip-specific copy of gpu_ops.
Jira NVGPU-74
Change-Id: I3fdbf6059ef664caf8d33797a8a5f3f8eb6485bf
Signed-off-by: Sunny He <suhe@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/1537748
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/gv100/fb_gv100.c')
-rw-r--r-- | drivers/gpu/nvgpu/gv100/fb_gv100.c | 9 |
1 files changed, 1 insertions, 8 deletions
diff --git a/drivers/gpu/nvgpu/gv100/fb_gv100.c b/drivers/gpu/nvgpu/gv100/fb_gv100.c index a3785266..319ebad6 100644 --- a/drivers/gpu/nvgpu/gv100/fb_gv100.c +++ b/drivers/gpu/nvgpu/gv100/fb_gv100.c | |||
@@ -21,7 +21,6 @@ | |||
21 | #include <nvgpu/gmmu.h> | 21 | #include <nvgpu/gmmu.h> |
22 | 22 | ||
23 | #include "gk20a/gk20a.h" | 23 | #include "gk20a/gk20a.h" |
24 | #include "gv11b/fb_gv11b.h" | ||
25 | #include "gv100/fb_gv100.h" | 24 | #include "gv100/fb_gv100.h" |
26 | 25 | ||
27 | #include <nvgpu/hw/gv100/hw_fb_gv100.h> | 26 | #include <nvgpu/hw/gv100/hw_fb_gv100.h> |
@@ -29,7 +28,7 @@ | |||
29 | #define HW_SCRUB_TIMEOUT_DEFAULT 100 /* usec */ | 28 | #define HW_SCRUB_TIMEOUT_DEFAULT 100 /* usec */ |
30 | #define HW_SCRUB_TIMEOUT_MAX 2000000 /* usec */ | 29 | #define HW_SCRUB_TIMEOUT_MAX 2000000 /* usec */ |
31 | 30 | ||
32 | static void gv100_fb_reset(struct gk20a *g) | 31 | void gv100_fb_reset(struct gk20a *g) |
33 | { | 32 | { |
34 | u32 val; | 33 | u32 val; |
35 | int retries = HW_SCRUB_TIMEOUT_MAX / HW_SCRUB_TIMEOUT_DEFAULT; | 34 | int retries = HW_SCRUB_TIMEOUT_MAX / HW_SCRUB_TIMEOUT_DEFAULT; |
@@ -50,9 +49,3 @@ static void gv100_fb_reset(struct gk20a *g) | |||
50 | val &= ~fb_mmu_priv_level_mask_write_violation_m(); | 49 | val &= ~fb_mmu_priv_level_mask_write_violation_m(); |
51 | gk20a_writel(g, fb_mmu_priv_level_mask_r(), val); | 50 | gk20a_writel(g, fb_mmu_priv_level_mask_r(), val); |
52 | } | 51 | } |
53 | |||
54 | void gv100_init_fb(struct gpu_ops *gops) | ||
55 | { | ||
56 | gv11b_init_fb(gops); | ||
57 | gops->fb.reset = gv100_fb_reset; | ||
58 | } | ||