diff options
author | Sunny He <suhe@nvidia.com> | 2017-07-28 21:36:52 -0400 |
---|---|---|
committer | mobile promotions <svcmobile_promotions@nvidia.com> | 2017-08-02 17:43:25 -0400 |
commit | a15e110a9b790f55a5c6e257cfbf7f7235f5a334 (patch) | |
tree | 199209146e3e67927c13e2ece240de40f973e1ea /drivers/gpu/nvgpu/gp106/regops_gp106.h | |
parent | 43ae97000be786e4118d431637f05b1462e296c4 (diff) |
gpu: nvgpu: Reorg regops HAL initialization
Reorganize HAL initialization to remove inheritance and construct
the gpu_ops struct at compile time. This patch only covers the
regops 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: I7e2ccf158a8e7efa453a3326e86146660f18926f
Signed-off-by: Sunny He <suhe@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/1530135
Reviewed-by: Automatic_Commit_Validation_User
GVS: Gerrit_Virtual_Submit
Reviewed-by: Alex Waterman <alexw@nvidia.com>
Tested-by: Alex Waterman <alexw@nvidia.com>
Reviewed-by: Terje Bergstrom <tbergstrom@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/gp106/regops_gp106.h')
-rw-r--r-- | drivers/gpu/nvgpu/gp106/regops_gp106.h | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/drivers/gpu/nvgpu/gp106/regops_gp106.h b/drivers/gpu/nvgpu/gp106/regops_gp106.h index 7f6b6861..271adcbf 100644 --- a/drivers/gpu/nvgpu/gp106/regops_gp106.h +++ b/drivers/gpu/nvgpu/gp106/regops_gp106.h | |||
@@ -2,7 +2,7 @@ | |||
2 | * | 2 | * |
3 | * Tegra GP106 GPU Debugger Driver Register Ops | 3 | * Tegra GP106 GPU Debugger Driver Register Ops |
4 | * | 4 | * |
5 | * Copyright (c) 2016, NVIDIA CORPORATION. All rights reserved. | 5 | * Copyright (c) 2016-2017, NVIDIA CORPORATION. All rights reserved. |
6 | * | 6 | * |
7 | * This program is free software; you can redistribute it and/or modify it | 7 | * This program is free software; you can redistribute it and/or modify it |
8 | * under the terms and conditions of the GNU General Public License, | 8 | * under the terms and conditions of the GNU General Public License, |
@@ -19,6 +19,18 @@ | |||
19 | #ifndef __REGOPS_GP106_H_ | 19 | #ifndef __REGOPS_GP106_H_ |
20 | #define __REGOPS_GP106_H_ | 20 | #define __REGOPS_GP106_H_ |
21 | 21 | ||
22 | void gp106_init_regops(struct gpu_ops *gops); | 22 | const struct regop_offset_range *gp106_get_global_whitelist_ranges(void); |
23 | int gp106_get_global_whitelist_ranges_count(void); | ||
24 | const struct regop_offset_range *gp106_get_context_whitelist_ranges(void); | ||
25 | int gp106_get_context_whitelist_ranges_count(void); | ||
26 | const u32 *gp106_get_runcontrol_whitelist(void); | ||
27 | int gp106_get_runcontrol_whitelist_count(void); | ||
28 | const struct regop_offset_range *gp106_get_runcontrol_whitelist_ranges(void); | ||
29 | int gp106_get_runcontrol_whitelist_ranges_count(void); | ||
30 | const u32 *gp106_get_qctl_whitelist(void); | ||
31 | int gp106_get_qctl_whitelist_count(void); | ||
32 | const struct regop_offset_range *gp106_get_qctl_whitelist_ranges(void); | ||
33 | int gp106_get_qctl_whitelist_ranges_count(void); | ||
34 | int gp106_apply_smpc_war(struct dbg_session_gk20a *dbg_s); | ||
23 | 35 | ||
24 | #endif /* __REGOPS_GP106_H_ */ | 36 | #endif /* __REGOPS_GP106_H_ */ |