diff options
author | Kay Sievers <kay.sievers@vrfy.org> | 2011-12-22 01:01:38 +0100 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2011-12-22 01:01:38 +0100 |
commit | 4a858cfc9af87cc60b3113c3b7b377a4305eac6a (patch) | |
tree | 22ab8aa44aab760d2e1afcb8559e4debe6092d28 /arch/arm/mach-exynos | |
parent | arm: leds: convert sysdev_class to a regular subsystem (diff) | |
download | linux-4a858cfc9af87cc60b3113c3b7b377a4305eac6a.tar.xz linux-4a858cfc9af87cc60b3113c3b7b377a4305eac6a.zip |
arm: convert sysdev_class to a regular subsystem
After all sysdev classes are ported to regular driver core entities, the
sysdev implementation will be entirely removed from the kernel.
Cc: Kukjin Kim <kgene.kim@samsung.com>
Cc: Russell King <linux@arm.linux.org.uk>
Cc: Ben Dooks <ben-linux@fluff.org>
Cc: Vinod Koul <vinod.koul@intel.com>
Cc: Boojin Kim <boojin.kim@samsung.com>
Cc: Linus Walleij <linus.walleij@linaro.org>
Cc: Lucas De Marchi <lucas.demarchi@profusion.mobi>
Cc: Heiko Stuebner <heiko@sntech.de>
Signed-off-by: Kay Sievers <kay.sievers@vrfy.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'arch/arm/mach-exynos')
-rw-r--r-- | arch/arm/mach-exynos/cpu.c | 15 | ||||
-rw-r--r-- | arch/arm/mach-exynos/pm.c | 10 |
2 files changed, 14 insertions, 11 deletions
diff --git a/arch/arm/mach-exynos/cpu.c b/arch/arm/mach-exynos/cpu.c index 90ec247f3b37..d4c41f349bcc 100644 --- a/arch/arm/mach-exynos/cpu.c +++ b/arch/arm/mach-exynos/cpu.c @@ -9,7 +9,7 @@ */ #include <linux/sched.h> -#include <linux/sysdev.h> +#include <linux/device.h> #include <asm/mach/map.h> #include <asm/mach/irq.h> @@ -243,17 +243,18 @@ void __init exynos4_init_irq(void) s5p_init_irq(NULL, 0); } -struct sysdev_class exynos4_sysclass = { - .name = "exynos4-core", +struct bus_type exynos4_subsys = { + .name = "exynos4-core", + .dev_name = "exynos4-core", }; -static struct sys_device exynos4_sysdev = { - .cls = &exynos4_sysclass, +static struct device exynos4_dev = { + .bus = &exynos4_subsys, }; static int __init exynos4_core_init(void) { - return sysdev_class_register(&exynos4_sysclass); + return subsys_system_register(&exynos4_subsys, NULL); } core_initcall(exynos4_core_init); @@ -294,5 +295,5 @@ int __init exynos_init(void) if (soc_is_exynos4210() || soc_is_exynos4212() || soc_is_exynos4412()) s5p_reset_hook = exynos4_sw_reset; - return sysdev_register(&exynos4_sysdev); + return device_register(&exynos4_dev); } diff --git a/arch/arm/mach-exynos/pm.c b/arch/arm/mach-exynos/pm.c index 509a435afd4b..c4f792dcad19 100644 --- a/arch/arm/mach-exynos/pm.c +++ b/arch/arm/mach-exynos/pm.c @@ -205,7 +205,7 @@ static void exynos4_pm_prepare(void) } -static int exynos4_pm_add(struct sys_device *sysdev) +static int exynos4_pm_add(struct device *dev) { pm_cpu_prep = exynos4_pm_prepare; pm_cpu_sleep = exynos4_cpu_suspend; @@ -301,8 +301,10 @@ static void exynos4_restore_pll(void) } while (epll_wait || vpll_wait); } -static struct sysdev_driver exynos4_pm_driver = { - .add = exynos4_pm_add, +static struct subsys_interface exynos4_pm_interface = { + .name = "exynos4_pm", + .subsys = &exynos4_subsys, + .add_dev = exynos4_pm_add, }; static __init int exynos4_pm_drvinit(void) @@ -325,7 +327,7 @@ static __init int exynos4_pm_drvinit(void) clk_put(pll_base); } - return sysdev_driver_register(&exynos4_sysclass, &exynos4_pm_driver); + return subsys_interface_register(&exynos4_pm_interface); } arch_initcall(exynos4_pm_drvinit); |