summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/gk20a/gk20a.h
diff options
context:
space:
mode:
authorTejal Kudav <tkudav@nvidia.com>2018-08-21 03:16:53 -0400
committermobile promotions <svcmobile_promotions@nvidia.com>2018-09-10 07:54:00 -0400
commit66f7bcc2f841f43e9bcd2a854361d6783bdb030e (patch)
treefd7ac3e76e45caf9d3a6b2082139a89c51c6d88a /drivers/gpu/nvgpu/gk20a/gk20a.h
parentb026c012963b135f8689c4409d12e79a76bb1156 (diff)
gpu: nvgpu: Add Top as a unit
NVHSCLK registers used by NVLINK IP are part of dev_top hardware headers. This patch adds "Top" as a separate unit and exposes HALs to access dev_top registers. The top unit contains top-level configuration information and any extra registers or features that do not fit into another block's feature set. JIRA NVGPU-1053 JIRA NVGPU-966 Change-Id: Id9a43d4a1c5397959897a242ea97a39a1b95f916 Signed-off-by: Tejal Kudav <tkudav@nvidia.com> Reviewed-on: https://git-master.nvidia.com/r/1803632 Reviewed-by: svc-misra-checker <svc-misra-checker@nvidia.com> GVS: Gerrit_Virtual_Submit Reviewed-by: Vijayakumar Subbu <vsubbu@nvidia.com> Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com> Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a/gk20a.h')
-rw-r--r--drivers/gpu/nvgpu/gk20a/gk20a.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/gk20a.h b/drivers/gpu/nvgpu/gk20a/gk20a.h
index 03510a16..89a05b3c 100644
--- a/drivers/gpu/nvgpu/gk20a/gk20a.h
+++ b/drivers/gpu/nvgpu/gk20a/gk20a.h
@@ -1314,7 +1314,12 @@ struct gpu_ops {
1314 int (*shutdown)(struct gk20a *g); 1314 int (*shutdown)(struct gk20a *g);
1315 int (*early_init)(struct gk20a *g); 1315 int (*early_init)(struct gk20a *g);
1316 } nvlink; 1316 } nvlink;
1317 1317 struct {
1318 u32 (*get_nvhsclk_ctrl_e_clk_nvl)(struct gk20a *g);
1319 void (*set_nvhsclk_ctrl_e_clk_nvl)(struct gk20a *g, u32 val);
1320 u32 (*get_nvhsclk_ctrl_swap_clk_nvl)(struct gk20a *g);
1321 void (*set_nvhsclk_ctrl_swap_clk_nvl)(struct gk20a *g, u32 val);
1322 } top;
1318 void (*semaphore_wakeup)(struct gk20a *g, bool post_events); 1323 void (*semaphore_wakeup)(struct gk20a *g, bool post_events);
1319}; 1324};
1320 1325