blob: a983d9c1421665d31b5c06fe4107b84820cd8241 [file] [log] [blame]
/*
*
* (C) COPYRIGHT 2017 ARM Limited. All rights reserved.
*
* This program is free software and is provided to you under the terms of the
* GNU General Public License version 2 as published by the Free Software
* Foundation, and any use by you of this program is subject to the terms
* of such GNU licence.
*
* 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.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, you can access it online at
* http://www.gnu.org/licenses/gpl-2.0.html.
*
* SPDX-License-Identifier: GPL-2.0
*
*/
#ifndef _KBASE_IPA_DEBUGFS_H_
#define _KBASE_IPA_DEBUGFS_H_
enum kbase_ipa_model_param_type {
PARAM_TYPE_S32 = 1,
PARAM_TYPE_STRING,
};
#ifdef CONFIG_DEBUG_FS
void kbase_ipa_debugfs_init(struct kbase_device *kbdev);
int kbase_ipa_model_param_add(struct kbase_ipa_model *model, const char *name,
void *addr, size_t size,
enum kbase_ipa_model_param_type type);
void kbase_ipa_model_param_free_all(struct kbase_ipa_model *model);
/**
* kbase_ipa_model_param_set_s32 - Set an integer model parameter
*
* @model: pointer to IPA model
* @name: name of corresponding debugfs entry
* @val: new value of the parameter
*
* This function is only exposed for use by unit tests running in
* kernel space. Normally it is expected that parameter values will
* instead be set via debugfs.
*/
void kbase_ipa_model_param_set_s32(struct kbase_ipa_model *model,
const char *name, s32 val);
#else /* CONFIG_DEBUG_FS */
static inline int kbase_ipa_model_param_add(struct kbase_ipa_model *model,
const char *name, void *addr,
size_t size,
enum kbase_ipa_model_param_type type)
{
return 0;
}
static inline void kbase_ipa_model_param_free_all(struct kbase_ipa_model *model)
{ }
#endif /* CONFIG_DEBUG_FS */
#endif /* _KBASE_IPA_DEBUGFS_H_ */