Firmware: add iSCSI iBFT Support
[deliverable/linux.git] / arch / x86 / kernel / kdebugfs.c
1 /*
2 * Architecture specific debugfs files
3 *
4 * Copyright (C) 2007, Intel Corp.
5 * Huang Ying <ying.huang@intel.com>
6 *
7 * This file is released under the GPLv2.
8 */
9
10 #include <linux/debugfs.h>
11 #include <linux/stat.h>
12 #include <linux/init.h>
13
14 #include <asm/setup.h>
15
16 #ifdef CONFIG_DEBUG_BOOT_PARAMS
17 static struct debugfs_blob_wrapper boot_params_blob = {
18 .data = &boot_params,
19 .size = sizeof(boot_params),
20 };
21
22 static int __init boot_params_kdebugfs_init(void)
23 {
24 int error;
25 struct dentry *dbp, *version, *data;
26
27 dbp = debugfs_create_dir("boot_params", NULL);
28 if (!dbp) {
29 error = -ENOMEM;
30 goto err_return;
31 }
32 version = debugfs_create_x16("version", S_IRUGO, dbp,
33 &boot_params.hdr.version);
34 if (!version) {
35 error = -ENOMEM;
36 goto err_dir;
37 }
38 data = debugfs_create_blob("data", S_IRUGO, dbp,
39 &boot_params_blob);
40 if (!data) {
41 error = -ENOMEM;
42 goto err_version;
43 }
44 return 0;
45 err_version:
46 debugfs_remove(version);
47 err_dir:
48 debugfs_remove(dbp);
49 err_return:
50 return error;
51 }
52 #endif
53
54 static int __init arch_kdebugfs_init(void)
55 {
56 int error = 0;
57
58 #ifdef CONFIG_DEBUG_BOOT_PARAMS
59 error = boot_params_kdebugfs_init();
60 #endif
61
62 return error;
63 }
64
65 arch_initcall(arch_kdebugfs_init);
This page took 0.0434 seconds and 5 git commands to generate.