mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-12-12 21:44:06 +08:00
7ebd0ec6cf
Adds configfs attributes to allow a configuration to be enabled for use when sysfs is used to control CoreSight. perf retains independent enabling of configurations. Signed-off-by: Mike Leach <mike.leach@linaro.org> Link: https://lore.kernel.org/r/20211124200038.28662-6-mike.leach@linaro.org Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
50 lines
1.3 KiB
C
50 lines
1.3 KiB
C
/* SPDX-License-Identifier: GPL-2.0-only */
|
|
/*
|
|
* Coresight system configuration driver - support for configfs.
|
|
*/
|
|
|
|
#ifndef CORESIGHT_SYSCFG_CONFIGFS_H
|
|
#define CORESIGHT_SYSCFG_CONFIGFS_H
|
|
|
|
#include <linux/configfs.h>
|
|
#include "coresight-syscfg.h"
|
|
|
|
#define CSCFG_FS_SUBSYS_NAME "cs-syscfg"
|
|
|
|
/* container for configuration view */
|
|
struct cscfg_fs_config {
|
|
struct cscfg_config_desc *config_desc;
|
|
struct config_group group;
|
|
bool active;
|
|
int preset;
|
|
};
|
|
|
|
/* container for feature view */
|
|
struct cscfg_fs_feature {
|
|
struct cscfg_feature_desc *feat_desc;
|
|
struct config_group group;
|
|
};
|
|
|
|
/* container for parameter view */
|
|
struct cscfg_fs_param {
|
|
int param_idx;
|
|
struct cscfg_feature_desc *feat_desc;
|
|
struct config_group group;
|
|
};
|
|
|
|
/* container for preset view */
|
|
struct cscfg_fs_preset {
|
|
int preset_num;
|
|
struct cscfg_config_desc *config_desc;
|
|
struct config_group group;
|
|
};
|
|
|
|
int cscfg_configfs_init(struct cscfg_manager *cscfg_mgr);
|
|
void cscfg_configfs_release(struct cscfg_manager *cscfg_mgr);
|
|
int cscfg_configfs_add_config(struct cscfg_config_desc *config_desc);
|
|
int cscfg_configfs_add_feature(struct cscfg_feature_desc *feat_desc);
|
|
void cscfg_configfs_del_config(struct cscfg_config_desc *config_desc);
|
|
void cscfg_configfs_del_feature(struct cscfg_feature_desc *feat_desc);
|
|
|
|
#endif /* CORESIGHT_SYSCFG_CONFIGFS_H */
|