Sfoglia il codice sorgente

kobject: convert /sys/firmware/acpi/ to use kobject_create

We don't need a kset here, a simple kobject will do just fine, so
dynamically create the kobject and use it.

Cc: Kay Sievers <kay.sievers@vrfy.org>
Cc: Len Brown <lenb@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Greg Kroah-Hartman 17 anni fa
parent
commit
99e0d2fc6c
3 ha cambiato i file con 8 aggiunte e 7 eliminazioni
  1. 6 5
      drivers/acpi/bus.c
  2. 1 1
      drivers/acpi/system.c
  3. 1 1
      include/acpi/acpi_bus.h

+ 6 - 5
drivers/acpi/bus.c

@@ -743,7 +743,7 @@ static int __init acpi_bus_init(void)
 	return -ENODEV;
 	return -ENODEV;
 }
 }
 
 
-decl_subsys(acpi, NULL);
+struct kobject *acpi_kobj;
 
 
 static int __init acpi_init(void)
 static int __init acpi_init(void)
 {
 {
@@ -755,10 +755,11 @@ static int __init acpi_init(void)
 		return -ENODEV;
 		return -ENODEV;
 	}
 	}
 
 
-	result = firmware_register(&acpi_subsys);
-	if (result < 0)
-		printk(KERN_WARNING "%s: firmware_register error: %d\n",
-			__FUNCTION__, result);
+	acpi_kobj = kobject_create_and_add("acpi", &firmware_kset->kobj);
+	if (!acpi_kobj) {
+		printk(KERN_WARNING "%s: kset create error\n", __FUNCTION__);
+		acpi_kobj = NULL;
+	}
 
 
 	result = acpi_bus_init();
 	result = acpi_bus_init();
 
 

+ 1 - 1
drivers/acpi/system.c

@@ -135,7 +135,7 @@ static int acpi_system_sysfs_init(void)
 	int table_index = 0;
 	int table_index = 0;
 	int result;
 	int result;
 
 
-	tables_kobj.parent = &acpi_subsys.kobj;
+	tables_kobj.parent = acpi_kobj;
 	kobject_set_name(&tables_kobj, "tables");
 	kobject_set_name(&tables_kobj, "tables");
 	result = kobject_register(&tables_kobj);
 	result = kobject_register(&tables_kobj);
 	if (result)
 	if (result)

+ 1 - 1
include/acpi/acpi_bus.h

@@ -319,7 +319,7 @@ struct acpi_bus_event {
 	u32 data;
 	u32 data;
 };
 };
 
 
-extern struct kset acpi_subsys;
+extern struct kobject *acpi_kobj;
 extern int acpi_bus_generate_netlink_event(const char*, const char*, u8, int);
 extern int acpi_bus_generate_netlink_event(const char*, const char*, u8, int);
 /*
 /*
  * External Functions
  * External Functions