2 * Intel MIC Platform Software Stack (MPSS)
4 * Copyright(c) 2014 Intel Corporation.
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License, version 2, as
8 * published by the Free Software Foundation.
10 * This program is distributed in the hope that it will be useful, but
11 * WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 * General Public License for more details.
18 #include <linux/debugfs.h>
19 #include <linux/seq_file.h>
21 #include "../common/mic_dev.h"
22 #include "scif_main.h"
24 /* Debugfs parent dir */
25 static struct dentry *scif_dbg;
27 static int scif_dev_test(struct seq_file *s, void *unused)
31 seq_printf(s, "Total Nodes %d Self Node Id %d Maxid %d\n",
32 scif_info.total, scif_info.nodeid,
38 seq_printf(s, "%-16s\t%-16s\n", "node_id", "state");
40 for (node = 0; node <= scif_info.maxid; node++)
41 seq_printf(s, "%-16d\t%-16s\n", scif_dev[node].node,
42 _scifdev_alive(&scif_dev[node]) ?
43 "Running" : "Offline");
47 static int scif_dev_test_open(struct inode *inode, struct file *file)
49 return single_open(file, scif_dev_test, inode->i_private);
52 static int scif_dev_test_release(struct inode *inode, struct file *file)
54 return single_release(inode, file);
57 static const struct file_operations scif_dev_ops = {
59 .open = scif_dev_test_open,
62 .release = scif_dev_test_release
65 void __init scif_init_debugfs(void)
69 scif_dbg = debugfs_create_dir(KBUILD_MODNAME, NULL);
71 dev_err(scif_info.mdev.this_device,
72 "can't create debugfs dir scif\n");
76 d = debugfs_create_file("scif_dev", 0444, scif_dbg,
78 debugfs_create_u8("en_msg_log", 0666, scif_dbg, &scif_info.en_msg_log);
79 debugfs_create_u8("p2p_enable", 0666, scif_dbg, &scif_info.p2p_enable);
82 void scif_exit_debugfs(void)
84 debugfs_remove_recursive(scif_dbg);