summaryrefslogtreecommitdiff
path: root/arch/alpha
diff options
context:
space:
mode:
authorMichael Neuling <mikey@neuling.org>2006-03-14 00:11:50 -0500
committerDmitry Torokhov <dtor_core@ameritech.net>2006-03-14 00:11:50 -0500
commite5c6c8e457d16c7cbc12f849ad18d4d508950de2 (patch)
tree25a6342ef5fa5ae19f1fbaed8538290225dba38d /arch/alpha
parentaaef685d5726768d25cbdc672a59c284d820b82e (diff)
Input: pcspkr - separate device and driver registration
The current pcspkr code combines the device and driver registration. This patch splits these, putting the device registration in the arch specific code. PowerPC and MIPS only have the pcspkr present sometimes. Signed-off-by: Michael Neuling <mikey@neuling.org> Signed-off-by: Ralf Baechle <ralf@linux-mips.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Diffstat (limited to 'arch/alpha')
-rw-r--r--arch/alpha/kernel/setup.c18
1 files changed, 18 insertions, 0 deletions
diff --git a/arch/alpha/kernel/setup.c b/arch/alpha/kernel/setup.c
index b4e5f8ff2b25..fa3f1a354b3f 100644
--- a/arch/alpha/kernel/setup.c
+++ b/arch/alpha/kernel/setup.c
@@ -28,6 +28,7 @@
#include <linux/init.h>
#include <linux/string.h>
#include <linux/ioport.h>
+#include <linux/platform_device.h>
#include <linux/bootmem.h>
#include <linux/pci.h>
#include <linux/seq_file.h>
@@ -1484,3 +1485,20 @@ alpha_panic_event(struct notifier_block *this, unsigned long event, void *ptr)
#endif
return NOTIFY_DONE;
}
+
+static __init int add_pcspkr(void)
+{
+ struct platform_device *pd;
+ int ret;
+
+ pd = platform_device_alloc("pcspkr", -1);
+ if (!pd)
+ return -ENOMEM;
+
+ ret = platform_device_add(pd);
+ if (ret)
+ platform_device_put(pd);
+
+ return ret;
+}
+device_initcall(add_pcspkr);