diff options
author | Terje Bergstrom <tbergstrom@nvidia.com> | 2018-08-10 11:28:23 -0400 |
---|---|---|
committer | mobile promotions <svcmobile_promotions@nvidia.com> | 2018-08-13 17:06:17 -0400 |
commit | e62785190f74cfbf9003a190a768e9077373bf6f (patch) | |
tree | be7bf93828c948d3b9bc84ec31f3f21cec35cf9e /drivers/gpu/nvgpu/gv100 | |
parent | 0706e94c9204becdee6a32391a319cad690d1bc3 (diff) |
gpu: nvgpu: Move priv_ring HAL to common
Move implementation of priv_ring HAL to common/priv_ring. Implement
two new HAL APIs to remove illegal dependencies: enable_priv_ring and
enum_ltc.
As enum_ltc can be implemented only gm20b onwards, bump gk20a
implementation to base on gm20b.
JIRA NVGPU-964
Change-Id: I160c2216132aadbcd98bb4a688aeeb2c520a9bc0
Signed-off-by: Terje Bergstrom <tbergstrom@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/1797025
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/gv100')
-rw-r--r-- | drivers/gpu/nvgpu/gv100/hal_gv100.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/drivers/gpu/nvgpu/gv100/hal_gv100.c b/drivers/gpu/nvgpu/gv100/hal_gv100.c index f6c3ec67..344ad1e8 100644 --- a/drivers/gpu/nvgpu/gv100/hal_gv100.c +++ b/drivers/gpu/nvgpu/gv100/hal_gv100.c | |||
@@ -25,6 +25,8 @@ | |||
25 | #include "common/bus/bus_gk20a.h" | 25 | #include "common/bus/bus_gk20a.h" |
26 | #include "common/bus/bus_gp10b.h" | 26 | #include "common/bus/bus_gp10b.h" |
27 | #include "common/bus/bus_gv100.h" | 27 | #include "common/bus/bus_gv100.h" |
28 | #include "common/priv_ring/priv_ring_gm20b.h" | ||
29 | #include "common/priv_ring/priv_ring_gp10b.h" | ||
28 | #include "common/clock_gating/gv100_gating_reglist.h" | 30 | #include "common/clock_gating/gv100_gating_reglist.h" |
29 | #include "common/ptimer/ptimer_gk20a.h" | 31 | #include "common/ptimer/ptimer_gk20a.h" |
30 | #include "common/fb/fb_gk20a.h" | 32 | #include "common/fb/fb_gk20a.h" |
@@ -68,7 +70,6 @@ | |||
68 | #include "gp10b/therm_gp10b.h" | 70 | #include "gp10b/therm_gp10b.h" |
69 | #include "gp10b/mc_gp10b.h" | 71 | #include "gp10b/mc_gp10b.h" |
70 | #include "gp10b/ce_gp10b.h" | 72 | #include "gp10b/ce_gp10b.h" |
71 | #include "gp10b/priv_ring_gp10b.h" | ||
72 | #include "gp10b/fifo_gp10b.h" | 73 | #include "gp10b/fifo_gp10b.h" |
73 | #include "gp10b/fecs_trace_gp10b.h" | 74 | #include "gp10b/fecs_trace_gp10b.h" |
74 | #include "gp10b/mm_gp10b.h" | 75 | #include "gp10b/mm_gp10b.h" |
@@ -868,10 +869,12 @@ static const struct gpu_ops gv100_ops = { | |||
868 | .falcon_hal_sw_init = gv100_falcon_hal_sw_init, | 869 | .falcon_hal_sw_init = gv100_falcon_hal_sw_init, |
869 | }, | 870 | }, |
870 | .priv_ring = { | 871 | .priv_ring = { |
872 | .enable_priv_ring = gm20b_priv_ring_enable, | ||
871 | .isr = gp10b_priv_ring_isr, | 873 | .isr = gp10b_priv_ring_isr, |
872 | .decode_error_code = gp10b_priv_ring_decode_error_code, | 874 | .decode_error_code = gp10b_priv_ring_decode_error_code, |
873 | .set_ppriv_timeout_settings = | 875 | .set_ppriv_timeout_settings = |
874 | gk20a_priv_set_timeout_settings, | 876 | gm20b_priv_set_timeout_settings, |
877 | .enum_ltc = gm20b_priv_ring_enum_ltc, | ||
875 | }, | 878 | }, |
876 | .fuse = { | 879 | .fuse = { |
877 | .is_opt_ecc_enable = gp10b_fuse_is_opt_ecc_enable, | 880 | .is_opt_ecc_enable = gp10b_fuse_is_opt_ecc_enable, |