• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // SPDX-License-Identifier: GPL-2.0-or-later
2 /*
3  * Copyright (c) 2023 Huawei Device Co., Ltd.
4  */
5 
6 #include <linux/debugfs.h>
7 
8 #include "xpm_debugfs.h"
9 #include "xpm_hck_hooks.h"
10 #include "xpm_log.h"
11 
12 static struct dentry *xpm_dir;
13 static uint8_t xpm_mode = XPM_PERMISSIVE_MODE;
14 
xpm_ret(int ret)15 int xpm_ret(int ret)
16 {
17 	return xpm_mode == XPM_ENFORCE_MODE ? ret : 0;
18 }
19 
xpm_debugfs_init(void)20 int xpm_debugfs_init(void)
21 {
22 	xpm_dir = debugfs_create_dir("xpm", NULL);
23 	if (!xpm_dir) {
24 		xpm_log_error("create xpm debugfs dir failed");
25 		return -EINVAL;
26 	}
27 
28 	debugfs_create_u8("xpm_mode", 0600, xpm_dir, &xpm_mode);
29 
30 	return 0;
31 }
32 
xpm_debugfs_exit(void)33 void xpm_debugfs_exit(void)
34 {
35 	debugfs_remove_recursive(xpm_dir);
36 }
37