aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-s3c2416/s3c2416.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/mach-s3c2416/s3c2416.c')
-rw-r--r--arch/arm/mach-s3c2416/s3c2416.c15
1 files changed, 8 insertions, 7 deletions
diff --git a/arch/arm/mach-s3c2416/s3c2416.c b/arch/arm/mach-s3c2416/s3c2416.c
index ee214bc83c83..143db908c2c5 100644
--- a/arch/arm/mach-s3c2416/s3c2416.c
+++ b/arch/arm/mach-s3c2416/s3c2416.c
@@ -31,7 +31,7 @@
31#include <linux/gpio.h> 31#include <linux/gpio.h>
32#include <linux/platform_device.h> 32#include <linux/platform_device.h>
33#include <linux/serial_core.h> 33#include <linux/serial_core.h>
34#include <linux/sysdev.h> 34#include <linux/device.h>
35#include <linux/syscore_ops.h> 35#include <linux/syscore_ops.h>
36#include <linux/clk.h> 36#include <linux/clk.h>
37#include <linux/io.h> 37#include <linux/io.h>
@@ -68,12 +68,13 @@ static struct map_desc s3c2416_iodesc[] __initdata = {
68 IODESC_ENT(TIMER), 68 IODESC_ENT(TIMER),
69}; 69};
70 70
71struct sysdev_class s3c2416_sysclass = { 71struct bus_type s3c2416_subsys = {
72 .name = "s3c2416-core", 72 .name = "s3c2416-core",
73 .dev_name = "s3c2416-core",
73}; 74};
74 75
75static struct sys_device s3c2416_sysdev = { 76static struct device s3c2416_dev = {
76 .cls = &s3c2416_sysclass, 77 .bus = &s3c2416_subsys,
77}; 78};
78 79
79static void s3c2416_hard_reset(void) 80static void s3c2416_hard_reset(void)
@@ -105,7 +106,7 @@ int __init s3c2416_init(void)
105#endif 106#endif
106 register_syscore_ops(&s3c24xx_irq_syscore_ops); 107 register_syscore_ops(&s3c24xx_irq_syscore_ops);
107 108
108 return sysdev_register(&s3c2416_sysdev); 109 return device_register(&s3c2416_dev);
109} 110}
110 111
111void __init s3c2416_init_uarts(struct s3c2410_uartcfg *cfg, int no) 112void __init s3c2416_init_uarts(struct s3c2410_uartcfg *cfg, int no)
@@ -133,7 +134,7 @@ void __init s3c2416_map_io(void)
133 iotable_init(s3c2416_iodesc, ARRAY_SIZE(s3c2416_iodesc)); 134 iotable_init(s3c2416_iodesc, ARRAY_SIZE(s3c2416_iodesc));
134} 135}
135 136
136/* need to register class before we actually register the device, and 137/* need to register the subsystem before we actually register the device, and
137 * we also need to ensure that it has been initialised before any of the 138 * we also need to ensure that it has been initialised before any of the
138 * drivers even try to use it (even if not on an s3c2416 based system) 139 * drivers even try to use it (even if not on an s3c2416 based system)
139 * as a driver which may support both 2443 and 2440 may try and use it. 140 * as a driver which may support both 2443 and 2440 may try and use it.
@@ -141,7 +142,7 @@ void __init s3c2416_map_io(void)
141 142
142static int __init s3c2416_core_init(void) 143static int __init s3c2416_core_init(void)
143{ 144{
144 return sysdev_class_register(&s3c2416_sysclass); 145 return subsys_system_register(&s3c2416_subsys, NULL);
145} 146}
146 147
147core_initcall(s3c2416_core_init); 148core_initcall(s3c2416_core_init);