xref: /linux/drivers/infiniband/hw/hns/hns_roce_debugfs.h (revision ae22a94997b8a03dcb3c922857c203246711f9d4)
1 /* SPDX-License-Identifier: GPL-2.0+ */
2 /*
3  * Copyright (c) 2023 Hisilicon Limited.
4  */
5 
6 #ifndef __HNS_ROCE_DEBUGFS_H
7 #define __HNS_ROCE_DEBUGFS_H
8 
9 /* debugfs seqfile */
10 struct hns_debugfs_seqfile {
11 	int (*read)(struct seq_file *seq, void *data);
12 	void *data;
13 };
14 
15 struct hns_sw_stat_debugfs {
16 	struct dentry *root;
17 	struct hns_debugfs_seqfile sw_stat;
18 };
19 
20 /* Debugfs for device */
21 struct hns_roce_dev_debugfs {
22 	struct dentry *root;
23 	struct hns_sw_stat_debugfs sw_stat_root;
24 };
25 
26 struct hns_roce_dev;
27 
28 void hns_roce_init_debugfs(void);
29 void hns_roce_cleanup_debugfs(void);
30 void hns_roce_register_debugfs(struct hns_roce_dev *hr_dev);
31 void hns_roce_unregister_debugfs(struct hns_roce_dev *hr_dev);
32 
33 #endif
34