diff options
author | Deepak Nibade <dnibade@nvidia.com> | 2015-12-29 03:23:46 -0500 |
---|---|---|
committer | Sachin Nikam <snikam@nvidia.com> | 2016-01-13 01:58:32 -0500 |
commit | ca76b336b32dce2e57034fbd44a273c539f67a54 (patch) | |
tree | ac0dadeb96f3c180a7a0bfcc51679858b2dedb95 /drivers/gpu/nvgpu/gk20a/gk20a.h | |
parent | 0ce201e8de6a320b70f1f34d05202650b9b5a046 (diff) |
gpu: nvgpu: support preprocessing of SM exceptions
Support preprocessing of SM exceptions if API
pointer pre_process_sm_exception() is defined
Also, expose some common APIs
Bug 200156699
Change-Id: I1303642c1c4403c520b62efb6fd83e95eaeb519b
Signed-off-by: Deepak Nibade <dnibade@nvidia.com>
Reviewed-on: http://git-master/r/925883
Reviewed-by: Automatic_Commit_Validation_User
GVS: Gerrit_Virtual_Submit
Reviewed-by: Terje Bergstrom <tbergstrom@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a/gk20a.h')
-rw-r--r-- | drivers/gpu/nvgpu/gk20a/gk20a.h | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/gk20a.h b/drivers/gpu/nvgpu/gk20a/gk20a.h index da115fa8..333f8889 100644 --- a/drivers/gpu/nvgpu/gk20a/gk20a.h +++ b/drivers/gpu/nvgpu/gk20a/gk20a.h | |||
@@ -1,7 +1,7 @@ | |||
1 | /* | 1 | /* |
2 | * GK20A Graphics | 2 | * GK20A Graphics |
3 | * | 3 | * |
4 | * Copyright (c) 2011-2015, NVIDIA CORPORATION. All rights reserved. | 4 | * Copyright (c) 2011-2016, NVIDIA CORPORATION. All rights reserved. |
5 | * | 5 | * |
6 | * This program is free software; you can redistribute it and/or modify it | 6 | * This program is free software; you can redistribute it and/or modify it |
7 | * under the terms and conditions of the GNU General Public License, | 7 | * under the terms and conditions of the GNU General Public License, |
@@ -193,6 +193,14 @@ struct gpu_ops { | |||
193 | struct warpstate *w_state); | 193 | struct warpstate *w_state); |
194 | void (*get_access_map)(struct gk20a *g, | 194 | void (*get_access_map)(struct gk20a *g, |
195 | u32 **whitelist, int *num_entries); | 195 | u32 **whitelist, int *num_entries); |
196 | int (*handle_fecs_error)(struct gk20a *g, | ||
197 | struct channel_gk20a *ch, | ||
198 | struct gr_gk20a_isr_data *isr_data); | ||
199 | int (*pre_process_sm_exception)(struct gk20a *g, | ||
200 | u32 gpc, u32 tpc, u32 global_esr, u32 warp_esr, | ||
201 | bool sm_debugger_attached, | ||
202 | struct channel_gk20a *fault_ch, | ||
203 | bool *early_exit, bool *ignore_debugger); | ||
196 | } gr; | 204 | } gr; |
197 | const char *name; | 205 | const char *name; |
198 | struct { | 206 | struct { |