diff options
author | Terje Bergstrom <tbergstrom@nvidia.com> | 2018-08-10 17:09:36 -0400 |
---|---|---|
committer | Bo Yan <byan@nvidia.com> | 2018-08-20 14:00:59 -0400 |
commit | 227c6f7b7a499dd58e0db6859736cfe586ef0897 (patch) | |
tree | d354f8422647021693aefefa5124d865c29ecd32 /drivers/gpu/nvgpu/gv100/hal_gv100.c | |
parent | 9e69e0cf978b53706f55ffb873e3966b4bb3a7a8 (diff) |
gpu: nvgpu: Move fuse HAL to common
Move implementation of fuse HAL to common/fuse. Also implements new
fuse query functions for FBIO, FBP, TPC floorsweeping and security
fuses.
JIRA NVGPU-957
Change-Id: I55e256a4f1b59d50a721d4942907f70dc57467c4
Signed-off-by: Terje Bergstrom <tbergstrom@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/1797177
Diffstat (limited to 'drivers/gpu/nvgpu/gv100/hal_gv100.c')
-rw-r--r-- | drivers/gpu/nvgpu/gv100/hal_gv100.c | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/drivers/gpu/nvgpu/gv100/hal_gv100.c b/drivers/gpu/nvgpu/gv100/hal_gv100.c index 8565d5fc..69ad018a 100644 --- a/drivers/gpu/nvgpu/gv100/hal_gv100.c +++ b/drivers/gpu/nvgpu/gv100/hal_gv100.c | |||
@@ -42,6 +42,9 @@ | |||
42 | #include "common/ltc/ltc_gm20b.h" | 42 | #include "common/ltc/ltc_gm20b.h" |
43 | #include "common/ltc/ltc_gp10b.h" | 43 | #include "common/ltc/ltc_gp10b.h" |
44 | #include "common/ltc/ltc_gv11b.h" | 44 | #include "common/ltc/ltc_gv11b.h" |
45 | #include "common/fuse/fuse_gm20b.h" | ||
46 | #include "common/fuse/fuse_gp10b.h" | ||
47 | #include "common/fuse/fuse_gp106.h" | ||
45 | 48 | ||
46 | #include "gk20a/gk20a.h" | 49 | #include "gk20a/gk20a.h" |
47 | #include "gk20a/fifo_gk20a.h" | 50 | #include "gk20a/fifo_gk20a.h" |
@@ -77,7 +80,6 @@ | |||
77 | #include "gp10b/fecs_trace_gp10b.h" | 80 | #include "gp10b/fecs_trace_gp10b.h" |
78 | #include "gp10b/mm_gp10b.h" | 81 | #include "gp10b/mm_gp10b.h" |
79 | #include "gp10b/pmu_gp10b.h" | 82 | #include "gp10b/pmu_gp10b.h" |
80 | #include "gp10b/fuse_gp10b.h" | ||
81 | 83 | ||
82 | #include "gv11b/css_gr_gv11b.h" | 84 | #include "gv11b/css_gr_gv11b.h" |
83 | #include "gv11b/dbg_gpu_gv11b.h" | 85 | #include "gv11b/dbg_gpu_gv11b.h" |
@@ -883,6 +885,18 @@ static const struct gpu_ops gv100_ops = { | |||
883 | .is_opt_ecc_enable = gp10b_fuse_is_opt_ecc_enable, | 885 | .is_opt_ecc_enable = gp10b_fuse_is_opt_ecc_enable, |
884 | .is_opt_feature_override_disable = | 886 | .is_opt_feature_override_disable = |
885 | gp10b_fuse_is_opt_feature_override_disable, | 887 | gp10b_fuse_is_opt_feature_override_disable, |
888 | .fuse_status_opt_fbio = gm20b_fuse_status_opt_fbio, | ||
889 | .fuse_status_opt_fbp = gm20b_fuse_status_opt_fbp, | ||
890 | .fuse_status_opt_rop_l2_fbp = gm20b_fuse_status_opt_rop_l2_fbp, | ||
891 | .fuse_status_opt_tpc_gpc = gm20b_fuse_status_opt_tpc_gpc, | ||
892 | .fuse_ctrl_opt_tpc_gpc = gm20b_fuse_ctrl_opt_tpc_gpc, | ||
893 | .fuse_opt_sec_debug_en = gm20b_fuse_opt_sec_debug_en, | ||
894 | .fuse_opt_priv_sec_en = gm20b_fuse_opt_priv_sec_en, | ||
895 | .read_vin_cal_fuse_rev = gp106_fuse_read_vin_cal_fuse_rev, | ||
896 | .read_vin_cal_slope_intercept_fuse = | ||
897 | gp106_fuse_read_vin_cal_slope_intercept_fuse, | ||
898 | .read_vin_cal_gain_offset_fuse = | ||
899 | gp106_fuse_read_vin_cal_gain_offset_fuse, | ||
886 | }, | 900 | }, |
887 | #if defined(CONFIG_TEGRA_NVLINK) | 901 | #if defined(CONFIG_TEGRA_NVLINK) |
888 | .nvlink = { | 902 | .nvlink = { |
@@ -947,6 +961,7 @@ int gv100_init_hal(struct gk20a *g) | |||
947 | gops->xve = gv100_ops.xve; | 961 | gops->xve = gv100_ops.xve; |
948 | gops->falcon = gv100_ops.falcon; | 962 | gops->falcon = gv100_ops.falcon; |
949 | gops->priv_ring = gv100_ops.priv_ring; | 963 | gops->priv_ring = gv100_ops.priv_ring; |
964 | gops->fuse = gv100_ops.fuse; | ||
950 | gops->nvlink = gv100_ops.nvlink; | 965 | gops->nvlink = gv100_ops.nvlink; |
951 | 966 | ||
952 | /* clocks */ | 967 | /* clocks */ |