gpu: nvgpu: remove channel debug_dump hal

Channel debug_dump hal function does not involve
any register related code.

Move gv11b_channel_debug_dump hal function to
common code nvgpu_channel_info_debug_dump function.

Check gpu hw version to limit instance variables
dump that differs between socs.

Add new hal pointer syncpt_debug_dump for pbdma.

Jira NVGPU-5109

Signed-off-by: Vinod G <vinodg@nvidia.com>
Change-Id: Icfca837ce8e4117387cffa6fadf6c094c7da5946
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2321016
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
This commit is contained in:
Vinod G
2020-03-30 18:07:27 -07:00
committed by Alex Waterman
parent 62c06723dd
commit 340ea241cb
13 changed files with 94 additions and 112 deletions

View File

@@ -187,7 +187,7 @@ struct nvgpu_channel_dump_info {
bool deterministic;
/** Channel H/W state */
struct nvgpu_channel_hw_state hw_state;
/** Snaphsot of channel instance fields. */
/** Snapshot of channel instance fields. */
struct {
u64 pb_top_level_get;
u64 pb_put;

View File

@@ -33,7 +33,6 @@ struct gk20a;
struct nvgpu_channel;
struct nvgpu_channel_hw_state;
struct nvgpu_debug_context;
struct nvgpu_channel_dump_info;
/**
* Channel HAL operations.
@@ -142,9 +141,6 @@ struct gops_channel {
void (*abort_clean_up)(struct nvgpu_channel *ch);
void (*reset_faulted)(struct gk20a *g, struct nvgpu_channel *ch,
bool eng, bool pbdma);
void (*debug_dump)(struct gk20a *g,
struct nvgpu_debug_context *o,
struct nvgpu_channel_dump_info *info);
#ifdef CONFIG_NVGPU_KERNEL_MODE_SUBMIT
int (*set_syncpt)(struct nvgpu_channel *ch);

View File

@@ -32,6 +32,7 @@ struct nvgpu_pbdma_status_info;
/** NON FUSA */
struct nvgpu_debug_context;
struct nvgpu_channel_dump_info;
struct gops_pbdma_status {
void (*read_pbdma_status_info)(struct gk20a *g,
@@ -84,6 +85,9 @@ struct gops_pbdma {
u32 (*allowed_syncpoints_0_index_v)(u32 offset);
/** NON FUSA */
void (*syncpt_debug_dump)(struct gk20a *g,
struct nvgpu_debug_context *o,
struct nvgpu_channel_dump_info *info);
void (*dump_status)(struct gk20a *g,
struct nvgpu_debug_context *o);
#if defined(CONFIG_NVGPU_HAL_NON_FUSA) && defined(CONFIG_NVGPU_NEXT)