summaryrefslogtreecommitdiffstats
path: root/arch/m68k
diff options
context:
space:
mode:
authorDmitry Torokhov2012-01-23 08:27:54 +0100
committerDmitry Torokhov2012-01-23 09:02:31 +0100
commit409e15442fc7f7ae9d025f3ea3fdf3c60070314f (patch)
treeeac3828e0df5916e757b68f5b1fefa8488f94dc4 /arch/m68k
parentInput: at32psif - convert to dev_pm_ops (diff)
downloadkernel-qcow2-linux-409e15442fc7f7ae9d025f3ea3fdf3c60070314f.tar.gz
kernel-qcow2-linux-409e15442fc7f7ae9d025f3ea3fdf3c60070314f.tar.xz
kernel-qcow2-linux-409e15442fc7f7ae9d025f3ea3fdf3c60070314f.zip
Input: q40kbd - convert driver to the split model
Convert the driver to standard spilt model arch-specific code registers platform device to which driver code can bind later. Also request IRQ immediately upon binding to the device instead of doing this when serio port is being opened. Acked-by: Geert Uytterhoeven <geert@linux-m68k.org> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Diffstat (limited to 'arch/m68k')
-rw-r--r--arch/m68k/q40/config.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/arch/m68k/q40/config.c b/arch/m68k/q40/config.c
index ad10fecec2fe..be936480b964 100644
--- a/arch/m68k/q40/config.c
+++ b/arch/m68k/q40/config.c
@@ -24,6 +24,7 @@
#include <linux/rtc.h>
#include <linux/vt_kern.h>
#include <linux/bcd.h>
+#include <linux/platform_device.h>
#include <asm/io.h>
#include <asm/rtc.h>
@@ -329,3 +330,15 @@ static int q40_set_rtc_pll(struct rtc_pll_info *pll)
} else
return -EINVAL;
}
+
+static __init int q40_add_kbd_device(void)
+{
+ struct platform_device *pdev;
+
+ pdev = platform_device_register_simple("q40kbd", -1, NULL, 0);
+ if (IS_ERR(pdev))
+ return PTR_ERR(pdev);
+
+ return 0;
+}
+arch_initcall(q40_add_kbd_device);