Files
linux-nvgpu/drivers/gpu/nvgpu/os/linux/debug_ce.c
Nitin Kumbhar dcb2a34200 gpu: nvgpu: fix circular dep of ce2 and gk20a headers
struct gk20a from gk20a.h needs defination of struct gk20a_ce_app
and ce2_gk20a.h needs defination of struct gk20a. This creates
a circular dependency.

Fix this by making gk20a_ce_app a pointer to skip knowing the
complete type details and using forward declarations for struct
gk20a_ce_app and struct gk20a.

The gk20a_ce_app pointer is alloc'ed in gk20a_init_ce_support()
and free'ed in gk20a_ce_destroy.

JIRA NVGPU-611

Change-Id: I4d62d5f2b2d1492db73bae69f90a1fe5586fba76
Signed-off-by: Nitin Kumbhar <nkumbhar@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/1917945
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
2018-10-12 17:35:11 +05:30

33 lines
1.0 KiB
C

/*
* Copyright (C) 2017-2018 NVIDIA Corporation. All rights reserved.
*
* This software is licensed under the terms of the GNU General Public
* License version 2, as published by the Free Software Foundation, and
* may be copied, distributed, and modified under those terms.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
*/
#include "debug_ce.h"
#include "os_linux.h"
#include "gk20a/ce2_gk20a.h"
#include <linux/debugfs.h>
void gk20a_ce_debugfs_init(struct gk20a *g)
{
struct nvgpu_os_linux *l = nvgpu_os_linux_from_gk20a(g);
debugfs_create_u32("ce_app_ctx_count", S_IWUSR | S_IRUGO,
l->debugfs, &g->ce_app->ctx_count);
debugfs_create_u32("ce_app_state", S_IWUSR | S_IRUGO,
l->debugfs, &g->ce_app->app_state);
debugfs_create_u32("ce_app_next_ctx_id", S_IWUSR | S_IRUGO,
l->debugfs, &g->ce_app->next_ctx_id);
}