summaryrefslogtreecommitdiffstats
path: root/drivers/staging/nvec/nvec_kbd.c
diff options
context:
space:
mode:
authorMarc Dietrich <marvin24@gmx.de>2011-08-24 20:23:07 +0200
committerGreg Kroah-Hartman <gregkh@suse.de>2011-08-24 14:25:30 -0700
commitf686e9affba24cfdf94fb155aaeb36a1e14719f1 (patch)
treed0ebacd60e2bee4debed3c908e32997ffbebf298 /drivers/staging/nvec/nvec_kbd.c
parent208b813c04ef7e628783cc62eeb1a140ae25bd19 (diff)
downloadop-kernel-dev-f686e9affba24cfdf94fb155aaeb36a1e14719f1.zip
op-kernel-dev-f686e9affba24cfdf94fb155aaeb36a1e14719f1.tar.gz
staging: nvec: convert to use platform register and mfdcells
This patch converts the nvec to use mfd cells and improves the registration of the platform driver. The child drivers are also converted to use mfd cells and platform registration. Signed-off-by: Marc Dietrich <marvin24@gmx.de> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/staging/nvec/nvec_kbd.c')
-rw-r--r--drivers/staging/nvec/nvec_kbd.c19
1 files changed, 18 insertions, 1 deletions
diff --git a/drivers/staging/nvec/nvec_kbd.c b/drivers/staging/nvec/nvec_kbd.c
index 04bd285..347a38c 100644
--- a/drivers/staging/nvec/nvec_kbd.c
+++ b/drivers/staging/nvec/nvec_kbd.c
@@ -1,6 +1,7 @@
#include <linux/slab.h>
#include <linux/input.h>
#include <linux/delay.h>
+#include <linux/platform_device.h>
#include "nvec-keytable.h"
#include "nvec.h"
@@ -66,8 +67,9 @@ static int nvec_kbd_event(struct input_dev *dev, unsigned int type,
return 0;
}
-int __init nvec_kbd_init(struct nvec_chip *nvec)
+static int __devinit nvec_kbd_probe(struct platform_device *pdev)
{
+ struct nvec_chip *nvec = dev_get_drvdata(pdev->dev.parent);
int i, j, err;
struct input_dev *idev;
@@ -120,3 +122,18 @@ fail:
input_free_device(idev);
return err;
}
+
+static struct platform_driver nvec_kbd_driver = {
+ .probe = nvec_kbd_probe,
+ .driver = {
+ .name = "nvec-kbd",
+ .owner = THIS_MODULE,
+ },
+};
+
+static int __init nvec_kbd_init(void)
+{
+ return platform_driver_register(&nvec_kbd_driver);
+}
+
+module_init(nvec_kbd_init);
OpenPOWER on IntegriCloud