linux/drivers/hwtracing/coresight/coresight-syscfg-configfs.h
<<
>>
Prefs
   1/* SPDX-License-Identifier: GPL-2.0-only */
   2/*
   3 * Coresight system configuration driver - support for configfs.
   4 */
   5
   6#ifndef CORESIGHT_SYSCFG_CONFIGFS_H
   7#define CORESIGHT_SYSCFG_CONFIGFS_H
   8
   9#include <linux/configfs.h>
  10#include "coresight-syscfg.h"
  11
  12#define CSCFG_FS_SUBSYS_NAME "cs-syscfg"
  13
  14/* container for configuration view */
  15struct cscfg_fs_config {
  16        struct cscfg_config_desc *config_desc;
  17        struct config_group group;
  18};
  19
  20/* container for feature view */
  21struct cscfg_fs_feature {
  22        struct cscfg_feature_desc *feat_desc;
  23        struct config_group group;
  24};
  25
  26/* container for parameter view */
  27struct cscfg_fs_param {
  28        int param_idx;
  29        struct cscfg_feature_desc *feat_desc;
  30        struct config_group group;
  31};
  32
  33/* container for preset view */
  34struct cscfg_fs_preset {
  35        int preset_num;
  36        struct cscfg_config_desc *config_desc;
  37        struct config_group group;
  38};
  39
  40int cscfg_configfs_init(struct cscfg_manager *cscfg_mgr);
  41void cscfg_configfs_release(struct cscfg_manager *cscfg_mgr);
  42int cscfg_configfs_add_config(struct cscfg_config_desc *config_desc);
  43int cscfg_configfs_add_feature(struct cscfg_feature_desc *feat_desc);
  44
  45#endif /* CORESIGHT_SYSCFG_CONFIGFS_H */
  46