aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/firmware/edd.c
diff options
context:
space:
mode:
authorGreg Kroah-Hartman <gregkh@suse.de>2007-10-16 12:11:44 -0400
committerGreg Kroah-Hartman <gregkh@suse.de>2008-01-24 23:40:10 -0500
commit3514faca19a6fdc209734431c509631ea92b094e (patch)
treef6d102e6dec276f8e8d1044b47c74a02b901554f /drivers/firmware/edd.c
parentc11c4154e7ff4cebfadad849b1e22689d759c3f4 (diff)
kobject: remove struct kobj_type from struct kset
We don't need a "default" ktype for a kset. We should set this explicitly every time for each kset. This change is needed so that we can make ksets dynamic, and cleans up one of the odd, undocumented assumption that the kset/kobject/ktype model has. This patch is based on a lot of help from Kay Sievers. Nasty bug in the block code was found by Dave Young <hidave.darkstar@gmail.com> Cc: Kay Sievers <kay.sievers@vrfy.org> Cc: Dave Young <hidave.darkstar@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/firmware/edd.c')
-rw-r--r--drivers/firmware/edd.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/firmware/edd.c b/drivers/firmware/edd.c
index 6942e065e609..fc567fad3f7c 100644
--- a/drivers/firmware/edd.c
+++ b/drivers/firmware/edd.c
@@ -631,7 +631,7 @@ static struct kobj_type edd_ktype = {
631 .default_attrs = def_attrs, 631 .default_attrs = def_attrs,
632}; 632};
633 633
634static decl_subsys(edd, &edd_ktype, NULL); 634static decl_subsys(edd, NULL);
635 635
636 636
637/** 637/**
@@ -723,7 +723,8 @@ edd_device_register(struct edd_device *edev, int i)
723 edd_dev_set_info(edev, i); 723 edd_dev_set_info(edev, i);
724 kobject_set_name(&edev->kobj, "int13_dev%02x", 724 kobject_set_name(&edev->kobj, "int13_dev%02x",
725 0x80 + i); 725 0x80 + i);
726 kobj_set_kset_s(edev,edd_subsys); 726 edev->kobj.kset = &edd_subsys;
727 edev->kobj.ktype = &edd_ktype;
727 error = kobject_register(&edev->kobj); 728 error = kobject_register(&edev->kobj);
728 if (!error) 729 if (!error)
729 edd_populate_dir(edev); 730 edd_populate_dir(edev);