From: Wanlong Gao <gaowanlong@cn.fujitsu.com>
To: Anirudh Ghayal <aghayal@codeaurora.org>
Cc: Dmitry Torokhov <dmitry.torokhov@gmail.com>,
linux-input@vger.kernel.org, linux-kernel@vger.kernel.org,
linux-arm-msm@vger.kernel.org,
Amy Maloche <amaloche@codeaurora.org>
Subject: Re: [PATCH] input: misc: Add support for pm8xxx based vibrator driver
Date: Tue, 02 Aug 2011 12:42:43 +0800 [thread overview]
Message-ID: <4E378043.3080801@cn.fujitsu.com> (raw)
In-Reply-To: <1312258397-11039-1-git-send-email-aghayal@codeaurora.org>
On 08/02/2011 12:13 PM, Anirudh Ghayal wrote:
> From: Amy Maloche<amaloche@codeaurora.org>
>
> Add support for pm8xx based vibrator to facilitate haptics.
> This module uses the ff-memless framework.
>
> Cc: Dmitry Torokhov<dmitry.torokhov@gmail.com>
> Signed-off-by: Amy Maloche<amaloche@codeaurora.org>
> Signed-off-by: Anirudh Ghayal<aghayal@codeaurora.org>
> ---
> Changes:
> Addressed Dmitry's comments from the previous RFC submission.
> lkml.org/lkml/2011/2/2/53
>
> drivers/input/misc/Kconfig | 12 ++
> drivers/input/misc/Makefile | 1 +
> drivers/input/misc/pm8xxx-vibrator.c | 309 ++++++++++++++++++++++++++++++++++
> 3 files changed, 322 insertions(+), 0 deletions(-)
> create mode 100644 drivers/input/misc/pm8xxx-vibrator.c
>
> diff --git a/drivers/input/misc/Kconfig b/drivers/input/misc/Kconfig
> index c9104bb..50b9e1b 100644
> --- a/drivers/input/misc/Kconfig
> +++ b/drivers/input/misc/Kconfig
> @@ -74,6 +74,18 @@ config INPUT_PCSPKR
> To compile this driver as a module, choose M here: the
> module will be called pcspkr.
>
> +config INPUT_PM8XXX_VIBRATOR
> + tristate "Qualcomm PM8XXX vibrator support"
> + depends on MFD_PM8XXX
> + select INPUT_FF_MEMLESS
> + help
> + This option enables device driver support for the vibrator
> + on Qualcomm PM8xxx chip. This driver supports ff-memless interface
> + from input framework.
> +
> + To compile this driver as module, choose M here: the
> + module will be called pm8xxx-vibrator.
> +
> config INPUT_SPARCSPKR
> tristate "SPARC Speaker support"
> depends on PCI&& SPARC64
> diff --git a/drivers/input/misc/Makefile b/drivers/input/misc/Makefile
> index 299ad5e..40ebe2b 100644
> --- a/drivers/input/misc/Makefile
> +++ b/drivers/input/misc/Makefile
> @@ -34,6 +34,7 @@ obj-$(CONFIG_INPUT_PCAP) += pcap_keys.o
> obj-$(CONFIG_INPUT_PCF50633_PMU) += pcf50633-input.o
> obj-$(CONFIG_INPUT_PCF8574) += pcf8574_keypad.o
> obj-$(CONFIG_INPUT_PCSPKR) += pcspkr.o
> +obj-$(CONFIG_INPUT_PM8XXX_VIBRATOR) += pm8xxx-vibrator.o
> obj-$(CONFIG_INPUT_POWERMATE) += powermate.o
> obj-$(CONFIG_INPUT_PWM_BEEPER) += pwm-beeper.o
> obj-$(CONFIG_INPUT_PMIC8XXX_PWRKEY) += pmic8xxx-pwrkey.o
> diff --git a/drivers/input/misc/pm8xxx-vibrator.c b/drivers/input/misc/pm8xxx-vibrator.c
> new file mode 100644
> index 0000000..cb2d3ad
> --- /dev/null
> +++ b/drivers/input/misc/pm8xxx-vibrator.c
> @@ -0,0 +1,309 @@
> +/* Copyright (c) 2010-2011, Code Aurora Forum. All rights reserved.
> + *
> + * This program is free software; you can redistribute it and/or modify
> + * it under the terms of the GNU General Public License version 2 and
> + * only version 2 as published by the Free Software Foundation.
> + *
> + * This program is distributed in the hope that it will be useful,
> + * but WITHOUT ANY WARRANTY; without even the implied warranty of
> + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
> + * GNU General Public License for more details.
> + */
> +
> +#include<linux/module.h>
> +#include<linux/init.h>
> +#include<linux/kernel.h>
> +#include<linux/errno.h>
> +#include<linux/platform_device.h>
> +#include<linux/input.h>
> +#include<linux/slab.h>
> +#include<linux/mfd/pm8xxx/core.h>
> +
> +#define VIB_DRV 0x4A
> +
> +#define VIB_DRV_SEL_MASK 0xf8
> +#define VIB_DRV_SEL_SHIFT 0x03
> +#define VIB_DRV_EN_MANUAL_MASK 0xfc
> +
> +#define VIB_MAX_LEVEL_mV (3100)
> +#define VIB_MIN_LEVEL_mV (1200)
> +#define VIB_MAX_LEVELS (VIB_MAX_LEVEL_mV - VIB_MIN_LEVEL_mV)
> +
> +#define MAX_FF_SPEED 0xff
> +
> +/*
> + * struct pm8xxx_vib - structure to hold vibrator data
> + * @vib_input_dev: input device supporting force feedback
> + * @vwork: work structure to set the vibration parameters
Anirudh, It's should be @work?
> + * @dev: device supporting force feedback
> + * @speed: speed of vibration set from userland
> + * @state: state of vibrator
> + * @level: level of vibration to set in the chip
> + * @reg_vib_drv: VIB_DRV register value
> + *
> + */
Thanks
Best Regards
Wanlong Gao
next prev parent reply other threads:[~2011-08-02 4:42 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-08-02 4:13 [PATCH] input: misc: Add support for pm8xxx based vibrator driver Anirudh Ghayal
2011-08-02 4:42 ` Wanlong Gao [this message]
2011-08-02 5:11 ` Dmitry Torokhov
2011-08-02 5:18 ` Wanlong Gao
2011-08-02 5:26 ` Dmitry Torokhov
2011-08-02 5:31 ` Wanlong Gao
[not found] ` <CAM=Q2cvzsZO4dc6Ot_aYJyLW27TErgySdXRcHr1UDb5ua1uHAg@mail.gmail.com>
2011-08-02 6:27 ` Anirudh Ghayal
2011-08-02 6:41 ` Dmitry Torokhov
2011-08-02 9:00 ` Anirudh Ghayal
2011-08-03 6:02 ` Dmitry Torokhov
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4E378043.3080801@cn.fujitsu.com \
--to=gaowanlong@cn.fujitsu.com \
--cc=aghayal@codeaurora.org \
--cc=amaloche@codeaurora.org \
--cc=dmitry.torokhov@gmail.com \
--cc=linux-arm-msm@vger.kernel.org \
--cc=linux-input@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.