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/gp106 | |
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/gp106')
-rw-r--r-- | drivers/gpu/nvgpu/gp106/hal_gp106.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/drivers/gpu/nvgpu/gp106/hal_gp106.c b/drivers/gpu/nvgpu/gp106/hal_gp106.c index a2e76a00..90d25fa0 100644 --- a/drivers/gpu/nvgpu/gp106/hal_gp106.c +++ b/drivers/gpu/nvgpu/gp106/hal_gp106.c | |||
@@ -27,6 +27,8 @@ | |||
27 | #include "common/ptimer/ptimer_gk20a.h" | 27 | #include "common/ptimer/ptimer_gk20a.h" |
28 | #include "common/bus/bus_gm20b.h" | 28 | #include "common/bus/bus_gm20b.h" |
29 | #include "common/bus/bus_gp10b.h" | 29 | #include "common/bus/bus_gp10b.h" |
30 | #include "common/priv_ring/priv_ring_gm20b.h" | ||
31 | #include "common/priv_ring/priv_ring_gp10b.h" | ||
30 | #include "common/fb/fb_gk20a.h" | 32 | #include "common/fb/fb_gk20a.h" |
31 | #include "common/fb/fb_gp10b.h" | 33 | #include "common/fb/fb_gp10b.h" |
32 | #include "common/fb/fb_gm20b.h" | 34 | #include "common/fb/fb_gm20b.h" |
@@ -52,11 +54,9 @@ | |||
52 | #include "gp10b/mm_gp10b.h" | 54 | #include "gp10b/mm_gp10b.h" |
53 | #include "gp10b/ce_gp10b.h" | 55 | #include "gp10b/ce_gp10b.h" |
54 | #include "gp10b/regops_gp10b.h" | 56 | #include "gp10b/regops_gp10b.h" |
55 | #include "gp10b/priv_ring_gp10b.h" | ||
56 | #include "gp10b/fifo_gp10b.h" | 57 | #include "gp10b/fifo_gp10b.h" |
57 | #include "gp10b/pmu_gp10b.h" | 58 | #include "gp10b/pmu_gp10b.h" |
58 | #include "gp10b/gr_gp10b.h" | 59 | #include "gp10b/gr_gp10b.h" |
59 | #include "gp10b/priv_ring_gp10b.h" | ||
60 | #include "gp10b/fuse_gp10b.h" | 60 | #include "gp10b/fuse_gp10b.h" |
61 | 61 | ||
62 | #include "gp106/fifo_gp106.h" | 62 | #include "gp106/fifo_gp106.h" |
@@ -774,10 +774,12 @@ static const struct gpu_ops gp106_ops = { | |||
774 | .falcon_hal_sw_init = gp106_falcon_hal_sw_init, | 774 | .falcon_hal_sw_init = gp106_falcon_hal_sw_init, |
775 | }, | 775 | }, |
776 | .priv_ring = { | 776 | .priv_ring = { |
777 | .enable_priv_ring = gm20b_priv_ring_enable, | ||
777 | .isr = gp10b_priv_ring_isr, | 778 | .isr = gp10b_priv_ring_isr, |
778 | .decode_error_code = gp10b_priv_ring_decode_error_code, | 779 | .decode_error_code = gp10b_priv_ring_decode_error_code, |
779 | .set_ppriv_timeout_settings = | 780 | .set_ppriv_timeout_settings = |
780 | gk20a_priv_set_timeout_settings, | 781 | gm20b_priv_set_timeout_settings, |
782 | .enum_ltc = gm20b_priv_ring_enum_ltc, | ||
781 | }, | 783 | }, |
782 | .fuse = { | 784 | .fuse = { |
783 | .check_priv_security = gp106_fuse_check_priv_security, | 785 | .check_priv_security = gp106_fuse_check_priv_security, |