diff options
author | Sunny He <suhe@nvidia.com> | 2017-08-01 20:10:42 -0400 |
---|---|---|
committer | mobile promotions <svcmobile_promotions@nvidia.com> | 2017-08-21 16:06:07 -0400 |
commit | 5f010177de985c901c33c914efe70a8498a5974f (patch) | |
tree | 1b1a2ac1ab71608a0754a7eb64222f5d198e793c /drivers/gpu/nvgpu/gp106/pmu_gp106.h | |
parent | b50b379c192714d0d08c3f2d33e90c95cf795253 (diff) |
gpu: nvgpu: Reorg pmu HAL initialization
Reorganize HAL initialization to remove inheritance and construct
the gpu_ops struct at compile time. This patch only covers the
pmu sub-module of the gpu_ops struct.
Perform HAL function assignments in hal_gxxxx.c through the
population of a chip-specific copy of gpu_ops.
Jira NVGPU-74
Change-Id: I8839ac99e87153637005e23b3013237f57275c54
Signed-off-by: Sunny He <suhe@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/1530982
Reviewed-by: svccoveritychecker <svccoveritychecker@nvidia.com>
Reviewed-by: svc-mobile-coverity <svc-mobile-coverity@nvidia.com>
Reviewed-by: Automatic_Commit_Validation_User
GVS: Gerrit_Virtual_Submit
Reviewed-by: Terje Bergstrom <tbergstrom@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/gp106/pmu_gp106.h')
-rw-r--r-- | drivers/gpu/nvgpu/gp106/pmu_gp106.h | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/drivers/gpu/nvgpu/gp106/pmu_gp106.h b/drivers/gpu/nvgpu/gp106/pmu_gp106.h index 68a00bb5..1b59b2c4 100644 --- a/drivers/gpu/nvgpu/gp106/pmu_gp106.h +++ b/drivers/gpu/nvgpu/gp106/pmu_gp106.h | |||
@@ -19,7 +19,15 @@ | |||
19 | 19 | ||
20 | struct gk20a; | 20 | struct gk20a; |
21 | 21 | ||
22 | void gp106_init_pmu_ops(struct gk20a *g); | 22 | bool gp106_is_pmu_supported(struct gk20a *g); |
23 | u32 gp106_pmu_pg_feature_list(struct gk20a *g, u32 pg_engine_id); | ||
24 | u32 gp106_pmu_pg_engines_list(struct gk20a *g); | ||
25 | int gp106_pg_param_init(struct gk20a *g, u32 pg_engine_id); | ||
26 | bool gp106_pmu_is_lpwr_feature_supported(struct gk20a *g, u32 feature_id); | ||
27 | bool gp106_is_lazy_bootstrap(u32 falcon_id); | ||
28 | bool gp106_is_priv_load(u32 falcon_id); | ||
29 | int gp106_load_falcon_ucode(struct gk20a *g, u32 falconidmask); | ||
30 | |||
23 | void gp106_pmu_elpg_statistics(struct gk20a *g, u32 pg_engine_id, | 31 | void gp106_pmu_elpg_statistics(struct gk20a *g, u32 pg_engine_id, |
24 | struct pmu_pg_stats_data *pg_stat_data); | 32 | struct pmu_pg_stats_data *pg_stat_data); |
25 | bool gp106_pmu_is_engine_in_reset(struct gk20a *g); | 33 | bool gp106_pmu_is_engine_in_reset(struct gk20a *g); |