PM / Sleep: Prevent waiting forever on asynchronous suspend after abort
[linux-2.6.git] / drivers / base / firmware.c
index cb1b98a..1138155 100644 (file)
@@ -3,11 +3,11 @@
  *
  * Copyright (c) 2002-3 Patrick Mochel
  * Copyright (c) 2002-3 Open Source Development Labs
+ * Copyright (c) 2007 Greg Kroah-Hartman <gregkh@suse.de>
+ * Copyright (c) 2007 Novell Inc.
  *
  * This file is released under the GPLv2
- *
  */
-
 #include <linux/kobject.h>
 #include <linux/module.h>
 #include <linux/init.h>
 
 #include "base.h"
 
-static decl_subsys(firmware, NULL, NULL);
-
-int firmware_register(struct subsystem * s)
-{
-       kset_set_kset_s(s, firmware_subsys);
-       return subsystem_register(s);
-}
-
-void firmware_unregister(struct subsystem * s)
-{
-       subsystem_unregister(s);
-}
+struct kobject *firmware_kobj;
+EXPORT_SYMBOL_GPL(firmware_kobj);
 
 int __init firmware_init(void)
 {
-       return subsystem_register(&firmware_subsys);
+       firmware_kobj = kobject_create_and_add("firmware", NULL);
+       if (!firmware_kobj)
+               return -ENOMEM;
+       return 0;
 }
-
-EXPORT_SYMBOL_GPL(firmware_register);
-EXPORT_SYMBOL_GPL(firmware_unregister);