summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/gp106/hal_gp106.c
diff options
context:
space:
mode:
authorTerje Bergstrom <tbergstrom@nvidia.com>2018-08-10 11:28:23 -0400
committermobile promotions <svcmobile_promotions@nvidia.com>2018-08-13 17:06:17 -0400
commite62785190f74cfbf9003a190a768e9077373bf6f (patch)
treebe7bf93828c948d3b9bc84ec31f3f21cec35cf9e /drivers/gpu/nvgpu/gp106/hal_gp106.c
parent0706e94c9204becdee6a32391a319cad690d1bc3 (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/hal_gp106.c')
-rw-r--r--drivers/gpu/nvgpu/gp106/hal_gp106.c8
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,