Files
brucex 2782ba9e41 gpu: host1x: Fix for const correctness in actmon code
Building the Android Common Kernel (ACK) with clang exposes build
errors due to const correctness issues in actmon code.

Remove actmon name when it is not necessary.
Set host1x_info var as const.
Set host1x_actmon_entry var as const.

Bug 3974840

Change-Id: I50c1437199ad549f397944aefa535103ed2fa05c
Signed-off-by: Bruce Xu <brucex@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nv-oot/+/2921160
Reviewed-by: Mikko Perttunen <mperttunen@nvidia.com>
Reviewed-by: Johnny Liu <johnliu@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-06-19 22:03:18 -07:00

50 lines
954 B
C

/* SPDX-License-Identifier: GPL-2.0-only */
/*
* Tegra host1x Actmon
*
* Copyright (c) 2023 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
*/
#ifndef HOST1X_ACTMON_H
#define HOST1X_ACTMON_H
#include <linux/device.h>
#include <linux/types.h>
enum host1x_actmon_module_type {
HOST1X_ACTMON_MODULE_ACTIVE,
HOST1X_ACTMON_MODULE_STALL,
};
struct host1x_actmon;
struct host1x_actmon_module {
enum host1x_actmon_module_type type;
u32 k;
u32 consec_upper_num;
u32 consec_lower_num;
void __iomem *regs;
struct host1x_actmon *actmon;
struct dentry *debugfs;
};
struct host1x_client;
struct host1x_actmon {
unsigned int irq;
unsigned int num_modules;
unsigned long rate;
u32 usecs_per_sample;
void __iomem *regs;
struct host1x_client *client;
struct host1x_actmon_module modules[8];
struct dentry *debugfs;
struct list_head list;
};
struct host1x;
void host1x_actmon_handle_interrupt(struct host1x *host, int classid);
#endif