diff options
Diffstat (limited to 'arch/arm/mach-s3c2416')
-rw-r--r-- | arch/arm/mach-s3c2416/irq.c | 12 | ||||
-rw-r--r-- | arch/arm/mach-s3c2416/pm.c | 12 | ||||
-rw-r--r-- | arch/arm/mach-s3c2416/s3c2416.c | 15 |
3 files changed, 22 insertions, 17 deletions
diff --git a/arch/arm/mach-s3c2416/irq.c b/arch/arm/mach-s3c2416/irq.c index 28ad20d42445..36df761061de 100644 --- a/arch/arm/mach-s3c2416/irq.c +++ b/arch/arm/mach-s3c2416/irq.c | |||
@@ -25,7 +25,7 @@ | |||
25 | #include <linux/module.h> | 25 | #include <linux/module.h> |
26 | #include <linux/interrupt.h> | 26 | #include <linux/interrupt.h> |
27 | #include <linux/ioport.h> | 27 | #include <linux/ioport.h> |
28 | #include <linux/sysdev.h> | 28 | #include <linux/device.h> |
29 | #include <linux/io.h> | 29 | #include <linux/io.h> |
30 | 30 | ||
31 | #include <mach/hardware.h> | 31 | #include <mach/hardware.h> |
@@ -213,7 +213,7 @@ static int __init s3c2416_add_sub(unsigned int base, | |||
213 | return 0; | 213 | return 0; |
214 | } | 214 | } |
215 | 215 | ||
216 | static int __init s3c2416_irq_add(struct sys_device *sysdev) | 216 | static int __init s3c2416_irq_add(struct device *dev) |
217 | { | 217 | { |
218 | printk(KERN_INFO "S3C2416: IRQ Support\n"); | 218 | printk(KERN_INFO "S3C2416: IRQ Support\n"); |
219 | 219 | ||
@@ -234,13 +234,15 @@ static int __init s3c2416_irq_add(struct sys_device *sysdev) | |||
234 | return 0; | 234 | return 0; |
235 | } | 235 | } |
236 | 236 | ||
237 | static struct sysdev_driver s3c2416_irq_driver = { | 237 | static struct subsys_interface s3c2416_irq_interface = { |
238 | .add = s3c2416_irq_add, | 238 | .name = "s3c2416_irq", |
239 | .subsys = &s3c2416_subsys, | ||
240 | .add_dev = s3c2416_irq_add, | ||
239 | }; | 241 | }; |
240 | 242 | ||
241 | static int __init s3c2416_irq_init(void) | 243 | static int __init s3c2416_irq_init(void) |
242 | { | 244 | { |
243 | return sysdev_driver_register(&s3c2416_sysclass, &s3c2416_irq_driver); | 245 | return subsys_interface_register(&s3c2416_irq_interface); |
244 | } | 246 | } |
245 | 247 | ||
246 | arch_initcall(s3c2416_irq_init); | 248 | arch_initcall(s3c2416_irq_init); |
diff --git a/arch/arm/mach-s3c2416/pm.c b/arch/arm/mach-s3c2416/pm.c index 9ec54f1d8e75..3bdb15a0d419 100644 --- a/arch/arm/mach-s3c2416/pm.c +++ b/arch/arm/mach-s3c2416/pm.c | |||
@@ -10,7 +10,7 @@ | |||
10 | * published by the Free Software Foundation. | 10 | * published by the Free Software Foundation. |
11 | */ | 11 | */ |
12 | 12 | ||
13 | #include <linux/sysdev.h> | 13 | #include <linux/device.h> |
14 | #include <linux/syscore_ops.h> | 14 | #include <linux/syscore_ops.h> |
15 | #include <linux/io.h> | 15 | #include <linux/io.h> |
16 | 16 | ||
@@ -48,7 +48,7 @@ static void s3c2416_pm_prepare(void) | |||
48 | __raw_writel(virt_to_phys(s3c_cpu_resume), S3C2412_INFORM1); | 48 | __raw_writel(virt_to_phys(s3c_cpu_resume), S3C2412_INFORM1); |
49 | } | 49 | } |
50 | 50 | ||
51 | static int s3c2416_pm_add(struct sys_device *sysdev) | 51 | static int s3c2416_pm_add(struct device *dev) |
52 | { | 52 | { |
53 | pm_cpu_prep = s3c2416_pm_prepare; | 53 | pm_cpu_prep = s3c2416_pm_prepare; |
54 | pm_cpu_sleep = s3c2416_cpu_suspend; | 54 | pm_cpu_sleep = s3c2416_cpu_suspend; |
@@ -56,13 +56,15 @@ static int s3c2416_pm_add(struct sys_device *sysdev) | |||
56 | return 0; | 56 | return 0; |
57 | } | 57 | } |
58 | 58 | ||
59 | static struct sysdev_driver s3c2416_pm_driver = { | 59 | static struct subsys_interface s3c2416_pm_interface = { |
60 | .add = s3c2416_pm_add, | 60 | .name = "s3c2416_pm", |
61 | .subsys = &s3c2416_subsys, | ||
62 | .add_dev = s3c2416_pm_add, | ||
61 | }; | 63 | }; |
62 | 64 | ||
63 | static __init int s3c2416_pm_init(void) | 65 | static __init int s3c2416_pm_init(void) |
64 | { | 66 | { |
65 | return sysdev_driver_register(&s3c2416_sysclass, &s3c2416_pm_driver); | 67 | return subsys_interface_register(&s3c2416_pm_interface); |
66 | } | 68 | } |
67 | 69 | ||
68 | arch_initcall(s3c2416_pm_init); | 70 | arch_initcall(s3c2416_pm_init); |
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 | ||
71 | struct sysdev_class s3c2416_sysclass = { | 71 | struct bus_type s3c2416_subsys = { |
72 | .name = "s3c2416-core", | 72 | .name = "s3c2416-core", |
73 | .dev_name = "s3c2416-core", | ||
73 | }; | 74 | }; |
74 | 75 | ||
75 | static struct sys_device s3c2416_sysdev = { | 76 | static struct device s3c2416_dev = { |
76 | .cls = &s3c2416_sysclass, | 77 | .bus = &s3c2416_subsys, |
77 | }; | 78 | }; |
78 | 79 | ||
79 | static void s3c2416_hard_reset(void) | 80 | static 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 | ||
111 | void __init s3c2416_init_uarts(struct s3c2410_uartcfg *cfg, int no) | 112 | void __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 | ||
142 | static int __init s3c2416_core_init(void) | 143 | static 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 | ||
147 | core_initcall(s3c2416_core_init); | 148 | core_initcall(s3c2416_core_init); |