aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-s3c2410
diff options
context:
space:
mode:
authorBen Dooks <ben-linux@fluff.org>2006-09-09 14:44:50 -0400
committerRussell King <rmk+kernel@arm.linux.org.uk>2006-09-09 14:44:50 -0400
commit189e74ee9c18a5440511c5af525377c609d6ebbd (patch)
tree7c7e85d3ae869af30c2aaa2e8318015cdead02a5 /arch/arm/mach-s3c2410
parent3142afb568d266765bde94f90b0dfee7e5cb08ce (diff)
[ARM] 3775/1: S3C24XX: do not add same sysdev_driver to two classes
Patch from Ben Dooks The s3c244x-irq.c code makes the mistake of adding the same drive to two different sys-classes. This causes the class lists to become corrupted and the suspend code to OOPS. Signed-off-by: Ben Dooks <ben-linux@fluff.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/mach-s3c2410')
-rw-r--r--arch/arm/mach-s3c2410/s3c244x-irq.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/arch/arm/mach-s3c2410/s3c244x-irq.c b/arch/arm/mach-s3c2410/s3c244x-irq.c
index 74be83c4126e..44c5affa9b89 100644
--- a/arch/arm/mach-s3c2410/s3c244x-irq.c
+++ b/arch/arm/mach-s3c2410/s3c244x-irq.c
@@ -119,21 +119,24 @@ static int s3c244x_irq_add(struct sys_device *sysdev)
119 return 0; 119 return 0;
120} 120}
121 121
122static struct sysdev_driver s3c244x_irq_driver = { 122static struct sysdev_driver s3c2440_irq_driver = {
123 .add = s3c244x_irq_add, 123 .add = s3c244x_irq_add,
124}; 124};
125 125
126static int s3c2440_irq_init(void) 126static int s3c2440_irq_init(void)
127{ 127{
128 return sysdev_driver_register(&s3c2440_sysclass, &s3c244x_irq_driver); 128 return sysdev_driver_register(&s3c2440_sysclass, &s3c2440_irq_driver);
129} 129}
130 130
131arch_initcall(s3c2440_irq_init); 131arch_initcall(s3c2440_irq_init);
132 132
133static struct sysdev_driver s3c2442_irq_driver = {
134 .add = s3c244x_irq_add,
135};
133 136
134static int s3c2442_irq_init(void) 137static int s3c2442_irq_init(void)
135{ 138{
136 return sysdev_driver_register(&s3c2442_sysclass, &s3c244x_irq_driver); 139 return sysdev_driver_register(&s3c2442_sysclass, &s3c2442_irq_driver);
137} 140}
138 141
139arch_initcall(s3c2442_irq_init); 142arch_initcall(s3c2442_irq_init);