diff options
author | Sunny He <suhe@nvidia.com> | 2017-07-26 14:13:15 -0400 |
---|---|---|
committer | mobile promotions <svcmobile_promotions@nvidia.com> | 2017-07-27 19:34:44 -0400 |
commit | 9d37d8b78c2dac7fa480493d1ab67b95290b87f1 (patch) | |
tree | 338d862a37c8639c68a22f9543fa1499f2307762 /drivers/gpu/nvgpu/gk20a/fecs_trace_gk20a.h | |
parent | 6431ec360bf7b7baf6dd687b1525c40114ede189 (diff) |
gpu: nvgpu: Reorg fecs_trace HAL initialization
Reorganize HAL initialization to remove inheritance and construct
the gpu_ops struct at compile time. This patch only covers the
fecs_trace 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: I84485ad64997270c6a0fce3c95dc9ceb0094cf6c
Signed-off-by: Sunny He <suhe@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/1527419
Reviewed-by: Automatic_Commit_Validation_User
GVS: Gerrit_Virtual_Submit
Reviewed-by: Terje Bergstrom <tbergstrom@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a/fecs_trace_gk20a.h')
-rw-r--r-- | drivers/gpu/nvgpu/gk20a/fecs_trace_gk20a.h | 20 |
1 files changed, 17 insertions, 3 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/fecs_trace_gk20a.h b/drivers/gpu/nvgpu/gk20a/fecs_trace_gk20a.h index 4979d6c6..454a33e8 100644 --- a/drivers/gpu/nvgpu/gk20a/fecs_trace_gk20a.h +++ b/drivers/gpu/nvgpu/gk20a/fecs_trace_gk20a.h | |||
@@ -1,5 +1,5 @@ | |||
1 | /* | 1 | /* |
2 | * Copyright (c) 2016, NVIDIA CORPORATION. All rights reserved. | 2 | * Copyright (c) 2016-2017, NVIDIA CORPORATION. All rights reserved. |
3 | * | 3 | * |
4 | * This program is free software; you can redistribute it and/or modify it | 4 | * This program is free software; you can redistribute it and/or modify it |
5 | * under the terms and conditions of the GNU General Public License, | 5 | * under the terms and conditions of the GNU General Public License, |
@@ -14,7 +14,21 @@ | |||
14 | #ifndef __FECS_TRACE_GK20A_H | 14 | #ifndef __FECS_TRACE_GK20A_H |
15 | #define __FECS_TRACE_GK20A_H | 15 | #define __FECS_TRACE_GK20A_H |
16 | 16 | ||
17 | struct gpu_ops; | 17 | struct gk20a; |
18 | void gk20a_init_fecs_trace_ops(struct gpu_ops *ops); | 18 | struct channel_gk20a; |
19 | struct nvgpu_ctxsw_trace_filter; | ||
20 | |||
21 | int gk20a_fecs_trace_poll(struct gk20a *g); | ||
22 | int gk20a_fecs_trace_init(struct gk20a *g); | ||
23 | int gk20a_fecs_trace_bind_channel(struct gk20a *g, | ||
24 | struct channel_gk20a *ch); | ||
25 | int gk20a_fecs_trace_unbind_channel(struct gk20a *g, struct channel_gk20a *ch); | ||
26 | int gk20a_fecs_trace_reset(struct gk20a *g); | ||
27 | int gk20a_fecs_trace_deinit(struct gk20a *g); | ||
28 | int gk20a_gr_max_entries(struct gk20a *g, | ||
29 | struct nvgpu_ctxsw_trace_filter *filter); | ||
30 | int gk20a_fecs_trace_enable(struct gk20a *g); | ||
31 | int gk20a_fecs_trace_disable(struct gk20a *g); | ||
32 | bool gk20a_fecs_trace_is_enabled(struct gk20a *g); | ||
19 | 33 | ||
20 | #endif /* __FECS_TRACE_GK20A_H */ | 34 | #endif /* __FECS_TRACE_GK20A_H */ |