Merge branch 'driver-core-next' into Linux 3.2
This resolves the conflict in the arch/arm/mach-s3c64xx/s3c6400.c file, and it fixes the build error in the arch/x86/kernel/microcode_core.c file, that the merge did not catch. The microcode_core.c patch was provided by Stephen Rothwell <sfr@canb.auug.org.au> who was invaluable in the merge issues involved with the large sysdev removal process in the driver-core tree. Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
@@ -13,7 +13,7 @@
|
||||
#include <linux/init.h>
|
||||
#include <linux/cpu.h>
|
||||
#include <linux/bitmap.h>
|
||||
#include <linux/sysdev.h>
|
||||
#include <linux/device.h>
|
||||
#include <linux/kernel.h>
|
||||
#include <linux/module.h>
|
||||
#include <linux/slab.h>
|
||||
@@ -337,9 +337,9 @@ static struct kobj_type ktype_percpu_entry = {
|
||||
.default_attrs = sq_sysfs_attrs,
|
||||
};
|
||||
|
||||
static int __devinit sq_sysdev_add(struct sys_device *sysdev)
|
||||
static int __devinit sq_dev_add(struct device *dev)
|
||||
{
|
||||
unsigned int cpu = sysdev->id;
|
||||
unsigned int cpu = dev->id;
|
||||
struct kobject *kobj;
|
||||
int error;
|
||||
|
||||
@@ -348,25 +348,27 @@ static int __devinit sq_sysdev_add(struct sys_device *sysdev)
|
||||
return -ENOMEM;
|
||||
|
||||
kobj = sq_kobject[cpu];
|
||||
error = kobject_init_and_add(kobj, &ktype_percpu_entry, &sysdev->kobj,
|
||||
error = kobject_init_and_add(kobj, &ktype_percpu_entry, &dev->kobj,
|
||||
"%s", "sq");
|
||||
if (!error)
|
||||
kobject_uevent(kobj, KOBJ_ADD);
|
||||
return error;
|
||||
}
|
||||
|
||||
static int __devexit sq_sysdev_remove(struct sys_device *sysdev)
|
||||
static int __devexit sq_dev_remove(struct device *dev)
|
||||
{
|
||||
unsigned int cpu = sysdev->id;
|
||||
unsigned int cpu = dev->id;
|
||||
struct kobject *kobj = sq_kobject[cpu];
|
||||
|
||||
kobject_put(kobj);
|
||||
return 0;
|
||||
}
|
||||
|
||||
static struct sysdev_driver sq_sysdev_driver = {
|
||||
.add = sq_sysdev_add,
|
||||
.remove = __devexit_p(sq_sysdev_remove),
|
||||
static struct subsys_interface sq_interface = {
|
||||
.name = "sq"
|
||||
.subsys = &cpu_subsys,
|
||||
.add_dev = sq_dev_add,
|
||||
.remove_dev = __devexit_p(sq_dev_remove),
|
||||
};
|
||||
|
||||
static int __init sq_api_init(void)
|
||||
@@ -386,7 +388,7 @@ static int __init sq_api_init(void)
|
||||
if (unlikely(!sq_bitmap))
|
||||
goto out;
|
||||
|
||||
ret = sysdev_driver_register(&cpu_sysdev_class, &sq_sysdev_driver);
|
||||
ret = subsys_interface_register(&sq_interface);
|
||||
if (unlikely(ret != 0))
|
||||
goto out;
|
||||
|
||||
@@ -401,7 +403,7 @@ out:
|
||||
|
||||
static void __exit sq_api_exit(void)
|
||||
{
|
||||
sysdev_driver_unregister(&cpu_sysdev_class, &sq_sysdev_driver);
|
||||
subsys_interface_unregister(&sq_interface);
|
||||
kfree(sq_bitmap);
|
||||
kmem_cache_destroy(sq_cache);
|
||||
}
|
||||
|
Reference in New Issue
Block a user