Browse Source

ACPI: Cleanup custom_method debug stuff

- Move param aml_debug_output to other params into sysfs.c
- Split acpi_debugfs_init to prepare custom_method to be
  an own .config option and driver.

Signed-off-by: Thomas Renninger <trenn@suse.de>
Acked-by: Rafael J. Wysocki <rjw@sisk.pl>
Acked-by: rui.zhang@intel.com
Signed-off-by: Len Brown <len.brown@intel.com>
Thomas Renninger 14 years ago
parent
commit
aecad432fd
3 changed files with 23 additions and 20 deletions
  1. 13 19
      drivers/acpi/debugfs.c
  2. 2 1
      drivers/acpi/internal.h
  3. 8 0
      drivers/acpi/sysfs.c

+ 13 - 19
drivers/acpi/debugfs.c

@@ -12,13 +12,8 @@
 #define _COMPONENT		ACPI_SYSTEM_COMPONENT
 #define _COMPONENT		ACPI_SYSTEM_COMPONENT
 ACPI_MODULE_NAME("debugfs");
 ACPI_MODULE_NAME("debugfs");
 
 
-
-/* /sys/modules/acpi/parameters/aml_debug_output */
-
-module_param_named(aml_debug_output, acpi_gbl_enable_aml_debug_object,
-		   bool, 0644);
-MODULE_PARM_DESC(aml_debug_output,
-		 "To enable/disable the ACPI Debug Object output.");
+struct dentry *acpi_debugfs_dir;
+static struct dentry *cm_dentry;
 
 
 /* /sys/kernel/debug/acpi/custom_method */
 /* /sys/kernel/debug/acpi/custom_method */
 
 
@@ -80,23 +75,22 @@ static const struct file_operations cm_fops = {
 	.llseek = default_llseek,
 	.llseek = default_llseek,
 };
 };
 
 
-int __init acpi_debugfs_init(void)
+static int __init acpi_custom_method_init(void)
 {
 {
-	struct dentry *acpi_dir, *cm_dentry;
-
-	acpi_dir = debugfs_create_dir("acpi", NULL);
-	if (!acpi_dir)
-		goto err;
+	if (!acpi_debugfs_dir)
+		return -ENOENT;
 
 
 	cm_dentry = debugfs_create_file("custom_method", S_IWUSR,
 	cm_dentry = debugfs_create_file("custom_method", S_IWUSR,
-					acpi_dir, NULL, &cm_fops);
+					acpi_debugfs_dir, NULL, &cm_fops);
 	if (!cm_dentry)
 	if (!cm_dentry)
-		goto err;
+		return -ENODEV;
 
 
 	return 0;
 	return 0;
+}
+
+void __init acpi_debugfs_init(void)
+{
+	acpi_debugfs_dir = debugfs_create_dir("acpi", NULL);
 
 
-err:
-	if (acpi_dir)
-		debugfs_remove(acpi_dir);
-	return -EINVAL;
+	acpi_custom_method_init();
 }
 }

+ 2 - 1
drivers/acpi/internal.h

@@ -28,9 +28,10 @@ int acpi_scan_init(void);
 int acpi_sysfs_init(void);
 int acpi_sysfs_init(void);
 
 
 #ifdef CONFIG_DEBUG_FS
 #ifdef CONFIG_DEBUG_FS
+extern struct dentry *acpi_debugfs_dir;
 int acpi_debugfs_init(void);
 int acpi_debugfs_init(void);
 #else
 #else
-static inline int acpi_debugfs_init(void) { return 0; }
+static inline void acpi_debugfs_init(void) { return; }
 #endif
 #endif
 
 
 /* --------------------------------------------------------------------------
 /* --------------------------------------------------------------------------

+ 8 - 0
drivers/acpi/sysfs.c

@@ -220,6 +220,14 @@ module_param_call(trace_state, param_set_trace_state, param_get_trace_state,
 		  NULL, 0644);
 		  NULL, 0644);
 #endif /* CONFIG_ACPI_DEBUG */
 #endif /* CONFIG_ACPI_DEBUG */
 
 
+
+/* /sys/modules/acpi/parameters/aml_debug_output */
+
+module_param_named(aml_debug_output, acpi_gbl_enable_aml_debug_object,
+		   bool, 0644);
+MODULE_PARM_DESC(aml_debug_output,
+		 "To enable/disable the ACPI Debug Object output.");
+
 /* /sys/module/acpi/parameters/acpica_version */
 /* /sys/module/acpi/parameters/acpica_version */
 static int param_get_acpica_version(char *buffer, struct kernel_param *kp)
 static int param_get_acpica_version(char *buffer, struct kernel_param *kp)
 {
 {