diff options
author | Marc Dietrich <marvin24@gmx.de> | 2011-08-24 20:23:07 +0200 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2011-08-24 14:25:30 -0700 |
commit | f686e9affba24cfdf94fb155aaeb36a1e14719f1 (patch) | |
tree | d0ebacd60e2bee4debed3c908e32997ffbebf298 /drivers/staging/nvec/nvec_kbd.c | |
parent | 208b813c04ef7e628783cc62eeb1a140ae25bd19 (diff) | |
download | op-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.c | 19 |
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); |